4

最近git pull、マスター ブランチで実行すると、次のマージ エラーが発生することがあります。

   Trying simple merge with 7ff9b5...
   Trying simple merge with 6872cd...
   Simple merge did not work, trying automatic merge.
   Auto-merging file.txt
   ERROR: content conflict in file.txt
   fatal: merge program failed
   Automated merge did not work.
   Should not be doing an Octopus.
   Merge with strategy octopus failed.

ただし、このマージ試行の後、master ブランチにさえないファイルがあります。この問題は、使用して再度プルすることで修正できますgit resetが、このヘッドまたはコミットがどこから来たのか疑問に思っていましたが、どうすればこれを見つけることができますか? ローカル GitLab サーバーを調べて確認しようとしましgitkたが、何も見つかりませんでした。

4

1 に答える 1

2

で個々のファイルの履歴を表示できるはずですgit log <filename>。これは、謎のファイルを特定するのに役立つ場合があります。

競合の場合、競合の原因を競合マーカーで表示する必要があります

<<<<<<< HEAD:filename
...
=======
...
>>>>>>> abcd123:filename

git pullワークフローからワークフローに切り替えることも役立つ場合がありgit fetchます。

fetchはリモート ブランチ ポインタ (例origin/master) を更新しますが、ローカル ブランチ (例 ) を自動的にマージしませんmaster。その後gitk --all、ブランチを視覚的に比較したりgit diff origin/master、ターミナルで変更を表示したりできます。

満足してアップストリームの変更を組み込みたい場合は、マージするだけです (例:ブランチgit merge origin/masterから)。master通常、 の後にgit pullgit fetch続きgit mergeます。

于 2014-01-03T15:13:12.670 に答える