11

p4mergeのクラスパスを設定し、ファイル.gitconfigを設定しましたが、p4mergeツールが競合している2つのファイルを操作すると想定すると、このエラーが発生します。誰かが解決策を知っていますか?

クラスパスに追加:「C:\ ProgramFiles \ Perforce \ p4merge.exe」が.gitconfigファイルに追加:

[merge]
    tool = p4merge
[mergetool "p4merge"]
    cmd = p4merge.exe \\\"$BASE\\\" \\\"$LOCAL\\\" \\\"$REMOTE\\\" \\\"$MERGED\\\"

エラーメッセージ:

Normal merge conflict for 'protected/views/layouts/main.php':
  {local}: modified file
  {remote}: modified file
Hit return to start merge resolution tool (p4merge):
C:\Program Files (x86)\Git/libexec/git-core/mergetools/p4merge: line 8: p4merge:
 command not found
protected/views/layouts/main.php seems unchanged.
Was the merge successful? [y/n] n
merge of protected/views/layouts/main.php failed
4

10 に答える 10

6

わたしにはできる:

[merge]
    keepBackup = false;
    tool = p4merge
[mergetool "p4merge"]
    path = C:/Program Files/Perforce/p4merge.exe
    cmd = \"C:/Program Files/Perforce/p4merge.exe\" "$BASE" "$LOCAL" "$REMOTE" "$MERGED"
    keepTemporaries = false
    trustExitCode = false
    keepBackup = false
[difftool]
    prompt = false
[mergetool]
    prompt = false
于 2013-09-09T10:33:16.200 に答える
3

p4merge をインストールしたばかりの場合は、更新された環境変数を登録するために、git コンソールを再起動する必要がある場合もあります。

于 2012-06-12T16:32:24.897 に答える
2

P4Merge をインストールした後、このページの指示に従ったところ、完全に機能しました。

https://gist.github.com/tony4d/3454372

于 2014-01-31T16:21:04.960 に答える
1

p4mergeが見つからないようです。システムのプロパティを使用して、PATH環境変数に「C:\ ProgramFiles \Perforce\」を追加してみてください。

于 2012-05-24T18:13:26.923 に答える
1

環境変数 Path に p4merge を追加したくない場合 (Dan Lister が述べたように)、git config にパラメーター パスを追加できます。

[mergetool "p4merge"]
    path = C:/Program Files/Perforce/p4merge.exe

git v1.7.11 (WinXP) で動作します。

于 2013-02-05T14:04:53.053 に答える
0

完全な P4merge パスを .gitconfig に追加します。これが私のものです(パスセパレーターが反転していることに注意してください。つまり、c:\ではなくc:/です):

[merge]
    tool = p4
[mergetool "p4"]
    cmd = c:/winprogs/p4merge/p4merge.exe \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\"
于 2012-05-24T19:10:48.803 に答える