56

の後にいくつかの競合を解決する必要があり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からのバージョンですべてを上書きしたい場合はどうすればよいですか?

4

5 に答える 5

7

コマンドラインで「-t」スイッチを忘れただけだと思います。git ヘルプ ページによると、「-t , --tool=」の略なので、意図したとおりになります。

試す:

git mergetool -t gvimdiff

もちろん、私のgvimdiffの代わりに好みのマージツールを使用することもできます.meldも素晴らしいです...

于 2012-10-08T19:20:24.370 に答える
5

プロジェクトのサブディレクトリからマージを実行すると、git はプロジェクト全体に対してマージを実行します。ただし、me​​rgetool は、作業ディレクトリ内またはその下のファイルのみを表示 (およびマージ) できます。そのため、このシナリオが発生した場合は、プロジェクトの最上位ディレクトリから競合解決を実行しようとしていることを確認してください。

于 2010-02-16T18:52:37.687 に答える