2016-06-26 6 views
24

私はBitbucketまたはGithubからレポを移行しました。私はこの問題を考えていませんが、私は2つのリモコンで設定していた間、それは少しのために...違うだけのことだ:リモートブランチにプッシュできません。ブランチに解決できません。

origin: bitbucket 
github: github 

その後、私はgithubのに両方と尖った起源を削除:

git remote remove origin 
git remote remove github 
git remote add origin https://github.... 

開発枝のテストプッシュ:

git push origin develop 

最新の情報はすべて最新です。

通常通り、いくつかの仕事のための新しいブランチを作成します。

git checkout -b Feature/Name 

は、ファイルまたは2を更新します。

git push origin Feature/Name 

これはエラーになります:リモートにプッシュしようと、この問題のためのオンライン

fatal: Feature/Name cannot be resolved to branch

を検索、HEADを確保することについてのいくつかのものが正しいことを見つける、私は私を持っていることを確認することについて他の人ブランチ名の大文字小文字は正しくありません(しかし、この時点では、ブランチはまだリモートにはありません)。解決できません。

は、このコマンドを実行:

git push --all -u 

これはgithubのに私のFeature/Name枝を得たが、それでも以前と同じ動作を参照してください。

git push origin develop 
git push origin Feature/Name 

最初の作品は、第二は、同じエラーがスローされます。

なぜこのエラーが発生しているのかわかりません。何か案は?

+0

「機能/名前」を作成したときにあなたはどの支部にいましたか?あなたは確かですか? 'Feature/Name'が存在し、それはチェックアウトされたブランチですか? 'git branch'で確認してください。 – Schwern

+0

@Schwern - 開発、テスト、およびマスターの3つのブランチ(ローカルおよびリモート)が存在しました。ブランチが整理され、マージされて展開されると、それらはローカルで削除されます(該当する場合はリモートで削除されます)。私は3つしかないと確信しています - 私はしばらくのうちにプロジェクトを開いていない、私がやったことはチェックして、私はゆるい枝がないことを確認した。 – jleach

+0

'Feature/Name'がローカルに存在することを確認するために' git branch'を実行したことを意味しますか? GUIやIDEを信頼しないでください。また、あなたは正しいのですか? – Schwern

答えて

52

私もこの問題を抱えていました。私はfeature/nameのようなものを持っていましたが、git branch -aは私にFEATURE/nameを示しました。ブランチの名前を変更し、削除して再作成します。何が最終的にそれを固定:.git/refs/heads

ゴーあなたがFEATUREフォルダが表示されます。名前をfeatureに変更します。

git branch -D <name-of-different-case-branch>

をし、再度プッシュしよう:あなたは同様の枝が異なる、大文字と小文字を区別ワイズを作成している場合があります

+1

これは私にとって正解でした。 Windowsでgitbashを使っていて、feature/some-featureとfeature/some-featureを作成しました。 –

+0

これは正解とマークする必要があります。私を助けました。ありがとう! – GuiDoody

+1

私はこの答えのためにビールを借りています! :D – user3797599

17

私自身のテストとthe OP's commentsに基づいて、私はある時点でブランチ名の括弧で囲まれていると思います。

まず、OPはOS XやWindowsのような大文字と小文字を区別しないオペレーティングシステム上にあると私は信じています。そして、彼らはこのようなことをしました...

$ git checkout -b SQLMigration/ReportFixes 
Switched to a new branch 'SQLMigration/ReportFixes' 

$ git push origin SqlMigration/ReportFixes 
fatal: SqlMigration/ReportFixes cannot be resolved to branch. 

ケーシングの違いに注意してください。また、名前を入力するだけの場合とは大きく異なることに注意してください。

$ git push origin SQLMigration/ReportFixme 
error: src refspec SQLMigration/ReportFixme does not match any. 
error: failed to push some refs to '[email protected]:schwern/testing123.git' 

Githubはブランチ名を格納するためにファイルシステムを使用するため、.git/refs/heads/SqlMigration/ReportFixesを開こうとします。ファイルシステムは大文字と小文字を区別しないため、.git/refs/heads/SqlMigration/ReportFixesが正常に開きますが、ブランチ名を大文字と小文字を区別して比較しようとすると混乱し、一致しません。

ローカルブランチがSQLMigration/ReportFixesで、リモートブランチがSqlMigration/ReportFixesの状態になった方法はわかりません。私はGithubが遠隔地の支店名を混乱させたとは思わない。簡単な説明は、プッシュアクセスを持つ他の人がリモートブランチ名を変更したことです。さもなければ、ある時点で彼らはタイプミスでリモコンを作成することができた何かをしました。彼らがhistory | grep -i sqlmigration/reportfixesでシェルの履歴をチェックした場合、彼らはケーシングを間違って入力したコマンドを見つけることができるかもしれません。

+0

OS Xのブランチ名の文字の大文字/小文字を変更したときにこの問題に遭遇しました。それらを元に戻して問題を解決しました。 –

+0

これは、前のブランチ、つまりAM-xxx/some_branchを持っていて、別のAM-XXX/another_branchを作成したときに、別のケースをローカルで許可し、 – timpwbaker

1

git fetchを実行していないことがありますか?リモートリポジトリからデータを取得する必要があります。試してみてくださいgit fetch remote/branch

3

Gitはあなたに別のケーシングで現在のブランチをチェックアウトさせて、リモートでrefを見つけることができません。

ただ難しい方法を見つけました。

1

私の場合は、大文字でブランチフォルダ(またはそれが何であれ)を使用していましたが、別のケース(小文字)で新しいものを作成しますが、gitは実際には資本でブランチを作成します。

前にfeature-ABC/branch1のようなブランチを作成してプッシュしました。次に、ブランチfeature-abc/branch2(小文字のABCに注意)を作成し、git push --set-upstream origin feature-abc/branch2を使用してリモートにプッシュしようとすると、「分岐できません」というエラーが表示されます。だから私はgit branchと実際にfeature-abc/branch1の代わりにfeature-ABC/branch2を作成して参照してください。私は再びgit checkout feature-ABC/feature2でチェックアウトし、それを解決するために大文字(feature-ABC/feature2)を使用して押します。

2

同様のことが私に起こりました。私は "Feat/name"のようなブランチを作成しました。 私が使用してそれをプッシュしようとした:私が影響を受けた非常にいくつかのファイルを持っていたとして、私は新しいブランチを作成し、それを解決するために

fatal: Feat/name cannot be resolved to branch

git push --set-upstream origin Feat/name

私はあなたと同じ致命的なエラーが発生しました。それから私は間違ったものを削除するには、私の枝を記載されている、それはキャップなしで表示:

  • 偉業/名前

私が前に決して最初caracter上のキャップを使用していました。それはgitがそれを好きではないように見えます...

+0

私は同じ場合がありましたTHX:D – abdoutelb

0

、あなたが実行する必要があります。

関連する問題