diff options
| author | Junio C Hamano <gitster@pobox.com> | 2009-11-15 16:40:50 -0800 |
|---|---|---|
| committer | Junio C Hamano <gitster@pobox.com> | 2009-11-15 16:40:50 -0800 |
| commit | 9fa51ff940d41c7bbacf91b81d860d4c18b9ee1e (patch) | |
| tree | 1dc29103a2e19a3ea95e5635af8468645913ccc9 /git-mergetool--lib.sh | |
| parent | 3176bd0b0da232207df99802bd714f51bc10f153 (diff) | |
| parent | c8998b4823cbccd6bd49c2034e242ae7d5873eae (diff) | |
| download | git-9fa51ff940d41c7bbacf91b81d860d4c18b9ee1e.tar.xz | |
Merge branch 'sc/difftool-p4merge'
* sc/difftool-p4merge:
mergetool--lib: add p4merge as a pre-configured mergetool option
Diffstat (limited to 'git-mergetool--lib.sh')
| -rw-r--r-- | git-mergetool--lib.sh | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/git-mergetool--lib.sh b/git-mergetool--lib.sh index bfb01f7842..f7c571e73c 100644 --- a/git-mergetool--lib.sh +++ b/git-mergetool--lib.sh @@ -46,7 +46,7 @@ check_unchanged () { valid_tool () { case "$1" in kdiff3 | tkdiff | xxdiff | meld | opendiff | \ - emerge | vimdiff | gvimdiff | ecmerge | diffuse | araxis) + emerge | vimdiff | gvimdiff | ecmerge | diffuse | araxis | p4merge) ;; # happy tortoisemerge) if ! merge_mode; then @@ -130,6 +130,19 @@ run_merge_tool () { "$merge_tool_path" "$LOCAL" "$REMOTE" fi ;; + p4merge) + if merge_mode; then + touch "$BACKUP" + if $base_present; then + "$merge_tool_path" "$BASE" "$LOCAL" "$REMOTE" "$MERGED" + else + "$merge_tool_path" "$LOCAL" "$LOCAL" "$REMOTE" "$MERGED" + fi + check_unchanged + else + "$merge_tool_path" "$LOCAL" "$REMOTE" + fi + ;; meld) if merge_mode; then touch "$BACKUP" @@ -323,7 +336,7 @@ guess_merge_tool () { else tools="opendiff kdiff3 tkdiff xxdiff meld $tools" fi - tools="$tools gvimdiff diffuse ecmerge araxis" + tools="$tools gvimdiff diffuse ecmerge p4merge araxis" fi if echo "${VISUAL:-$EDITOR}" | grep emacs > /dev/null 2>&1; then # $EDITOR is emacs so add emerge as a candidate |
