mergetool--lib: Refactor tools into separate files

Individual merge tools are now defined in a mergetools/$tool
file which is sourced at runtime.

The individual files are installed into $(git --exec-path)/mergetools/.
New tools can be added by creating a new file instead of editing the
git-mergetool--lib.sh scriptlet.

http://thread.gmane.org/gmane.comp.version-control.git/134906/focus=135006

Signed-off-by: David Aguilar <davvid@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
David Aguilar
2011-08-18 00:23:46 -07:00
committed by Junio C Hamano
parent 240dc3e8ed
commit bc7a96a896
17 changed files with 369 additions and 333 deletions

17
mergetools/diffuse Normal file
View File

@ -0,0 +1,17 @@
diff_cmd () {
"$merge_tool_path" "$LOCAL" "$REMOTE" | cat
}
merge_cmd () {
touch "$BACKUP"
if $base_present
then
"$merge_tool_path" \
"$LOCAL" "$MERGED" "$REMOTE" \
"$BASE" | cat
else
"$merge_tool_path" \
"$LOCAL" "$MERGED" "$REMOTE" | cat
fi
check_unchanged
}