2

Mercurial (+Tortoise Hg) を VCS として、Kdiff を差分およびマージ ツールとして使用しています。

一部のファイルは自動的にマージされ、この自動マージの結果がおかしい場合があります。

    public static Method()
<<<<<<< local
    {
        DoSmth();
    }
=======
    {
        DoSmth2();
    }
>>>>>>> other

kdiff はファイル内の未解決の競合に対して何もしていないようですが、解決済みとしてマークしています。たぶん、kdiff は diff ファイル形式を理解しないことがありますか? hg と kdiff の統合に何らかのバグがありますか?

また、この問題は最近発生したようですが、hg/tortoise hg/kdiff の新しいバージョンの問題でしょうか?

私たちは使用しています:

  • ウィンドウズ 7 x64
  • TortoiseHg と Mercurial 3.6.1
  • Kdiff 0.9.98

mercurial.ini から:

[ui]
merge = kdiff3

[tortoisehg]
editor=VisualStudio
vdiff=meld

[merge-tools]
meld.executable = C:\Program Files (x86)\Meld\meld.exe
meld.priority = 1
meld.premerge = False
meld.args = $local $base $other

[diff]
git = True

アップデート:

手動マージでも問題が発生します。手順:

  • リベースの開始
  • Tortoise Hg は言う: 「衝突があります」 マージに失敗しました
  • 「ツール解決」をクリックすると、Kdiffが開きます クディフ・ヌアン

そして、ここにあります!親 1 (中央の列) には、ファイルの一部として「dest」、「source」が含まれています。しかし、このファイルにはそのような行はありませんでした。

HG は、Kdiff が理解できない/理解できないいくつかの diff 情報を含む kdiff ファイルに与えるようです。

4

3 に答える 3