37

OS X 10.5 でp4mergeをマージ/差分ツールとして使用するようにMercurialをセットアップする方法を知っている人はいますか?

4

6 に答える 6

40

これはマージに機能します:

~/.hgrcこれをあなたの(または、オプションで、Mercurial.iniWindowsのあなたの)に置きます:

[merge-tools]
p4.priority = 100
p4.premerge = True  # change this to False if you're don't trust hg's internal merge
p4.executable = /Applications/p4merge.app/Contents/MacOS/p4merge
p4.gui = True
p4.args = $base $local $other $output

Mercurial1.0以降が必要です。明らかに、p4mergeがインストールされた場所を反映するために、その実行可能ファイルへのパスを更新する必要があります。


hg diff使用するものを変更することはできません; ただし、拡張機能を使用してextdiff必要な表示を使用する新しいdiffコマンドを作成できます。

したがってhg pdiff、p4マージなどを実行できます。

于 2008-10-04T16:48:49.697 に答える
15

私は TortoiseHg のバージョン 1.0.1 を使用しており、p4merge はすぐに使用できます。

グローバル設定 -> TortoiseHgに移動し、次のオプションを選択します。

  • 3 者間マージ ツール: p4merge
  • ビジュアル差分ツール: p4merge

スクリーンショット

于 2010-09-23T14:38:49.957 に答える
15

Ry4anの答えは、コマンド入力を混同するp4merge(Mac OSの下)を残す小さな問題を除いて、良い解決策であることがわかりました。彼の回答に記載されているすべてのことを行い、[merge-tools] セクションに次の行を追加します

p4.args=$base $local $other $output

この行は、mercurial に p4merge が引数を取る順序を伝えます。

于 2008-12-29T23:39:43.350 に答える
3

Windows で作業しているためかもしれませんが、提案された解決策はうまくいきませんでした。代わりに、以下が機能します。

~/.hgrc//に、Mercurial.ini次の変更を適用しました。

「ExtDiff」拡張機能を有効にしました:

[extensions]
hgext.extdiff =

P4 extdiff コマンドを追加:

[extdiff]
cmd.p4diff = p4merge

デフォルトのビジュアル差分ツールとして構成しました:

[tortoisehg]
vdiff = p4diff
于 2010-02-22T13:57:05.763 に答える
0

p4merge用のCLIツールがあると思います(これについては何も知りません)。

私は、Changes.appの使用、およびMercurialでの他のいくつかのGUIツールについてのブログ投稿を書きました:GUIツールでのMercurialの使用。

基本的に、diffツールをロードするCLIツールの呼び出しの期待を知る必要があります。IE、特定のファイルからデータをロードする方法、および終了を待機させる方法。あなたにいくつかのアイデアを与えるのに十分な情報が投稿にあるはずです。

于 2008-09-04T06:11:02.480 に答える
0

次の Python のビットを使用して p4merge を起動し、それを git で使用します。

#!/usr/bin/python
import sys
import os

os.system('/Applications/p4merge.app/Contents/MacOS/p4merge "%s" "%s"' % (sys.argv[2], sys.argv[5]))

Mercurial が外部の diff ツールをどのように起動するかはわかりませんが? 上記の行の 2 と 5 を「チェックイン」と「現在の作業コピー」の引数のインデックスに調整するのと同じくらい簡単だといいのですが。

于 2008-09-10T14:48:23.290 に答える