2012-01-22 20 views
2

ではありません。は、最新の状態に言うが、それは私が私のマスターブランチ上だし、マージしようとし

>git merge feature_branch1 
>Already up to date 

しかし、私の機能ブランチは、私のマスターブランチにはないファイルがあります。

なぜファイルをマスターブランチにマージしないのですか?なぜ、それが最新であると私に伝えているのですか?

+0

'git show-branch'の出力を表示してください。 –

+0

あなたはマスターにいますか?あなたがどちらの支店であるかを確認する 'git branch' – ouah

+0

@ouahはい私はそれをしました、それはマスターによってアスタリスクを示しています。 – Blankman

答えて

2

feature-branch1のコミットが現在のブランチにマージされていないため、最新のものであることを伝えています。これはコミットされたものであり、ファイルに関するものではないことに注意してください。 (つまりです)マージコミットまたはそれ以降のコミットで問題のファイルを削除することに不具合があった場合、Gitはそれを実行することを信じています。だから、

、物事のチェックを開始:ファイルがちょうどgit statusまたはgit diffで、あなたの仕事のツリーに削除された場合

  • を参照してください。
  • ブランチがマージされていること、視覚的にはgitkであること、またはgit branch --contains feature-branchであることを確認してください。
  • git show feature-branch:path/to/fliegit show master:path/to/fileを使用して、これらのファイルの1つがフィーチャーブランチに実際に存在し、実際にマスターにないことを確認します。たぶんあなたは実際にそれらを託すことはありません。
  • git log -- path/to/fileを使用して、そのパスにアクセスしたことを確認してください。おそらくあなたはそれらのファイルの削除をコミットしました。
  • マージコミットで何かダンプしたかどうかを確認してください - git show <merge-commit>はdiffを表示しません(diffはマージコミット自体の変更を示します))。 gitkのdiffを検査することもできます。何らかの理由で、マージ競合の解決中にこれらのファイルを削除し、不正なマージをコミットした可能性があります。

どこかに沿って、どこから外れているのかがわかるはずです。

関連する問題