どんな解決、紛争後のロ?
質問
していますの解決の一部紛争後の git pull
.
$ git pull
CONFLICT (rename/add): Renamed vignette_generator_mashed.h->vision_problem_8.h in 49423dd0d47abe6d839a783b5517bdfd200a202f. vision_problem_8.h added in HEAD
Added as vision_problem_8.h~HEAD_1 instead
Removed vignette_generator_cross_square.cc
Automatic merge failed; fix conflicts and then commit the result.
でインターネットで調べと、声を使用 git mergetool
.ここではどん:
$ git mergetool
merge tool candidates: meld kdiff3 tkdiff xxdiff meld gvimdiff emerge opendiff emerge vimdiff
No files need merging
$ git mergetool opendiff
merge tool candidates: meld kdiff3 tkdiff xxdiff meld gvimdiff emerge opendiff emerge vimdiff
opendiff: file not found
いることがどういうことなのかインストールが必要なの?
になっているのでしょうか?お知らせいただければ、バージョン git pull
保存ファイルの暗号化には対応できません。
解決
このためにmergetoolは必要ありません。手動で簡単に解決できます。
競合は、ローカルコミットがファイル vision_problem_8.h
を追加したことです。このファイルは、 vignette_generator_mashed.h
から名前を変更してリモートコミットも作成しました。 ls -l vision_problem_8.h *
を実行すると、おそらくgitが保存しているこのファイルの複数のバージョンが表示されます。それらの1つはあなたのものになり、もう1つはリモートバージョンになります。エディターまたは任意のツールを使用して、競合するコンテンツを解決できます。完了したら、影響を受けるファイルを git add
してコミットを完了します。
リモートコミットのバージョンを使用する場合は、書き込まなかったコピーを所定の場所に移動して git add
するだけです。
マージツールについては、 git help mergetool
をご覧ください。基本的に、含まれている可能性を見つけるまで実行するか、明示的に構成したものを使用します。
他のヒント
「-t」を忘れたと思うコマンドラインで切り替えます。 gitヘルプページによると、" -t、--tool ="の略です。意図したとおりになります。
試してください:
git mergetool -t gvimdiff
もちろん、gvimdiffの代わりに好みのマージツールを使用できます。meldも素晴らしいです...
ご自分の統合からのサブディレクトリのプロジェクトgitの統合全体のプロジェクト.しかし、mergetool見ることのできないたくさん(合併)のファイルを以下の作業ディレクトリを設定します。そのため、このシナリオが発生していることを確認してくださいしているための紛争解決からのトップレベルのディレクトリができます。
git pullのバージョンですべてを上書きしたい場合はどうなりますか? それだけが必要な場合は、次を使用する必要があります。
git fetch
git reset --hard origin/your-branch-name