merge(third_party/git): Merge squashed git subtree at v2.23.0

Merge commit '1b593e1ea4' as 'third_party/git'
This commit is contained in:
Vincent Ambo 2020-01-11 23:36:56 +00:00
commit 7ef0d62730
3629 changed files with 1139935 additions and 0 deletions

18
third_party/git/mergetools/araxis vendored Normal file
View file

@ -0,0 +1,18 @@
diff_cmd () {
"$merge_tool_path" -wait -2 "$LOCAL" "$REMOTE" >/dev/null 2>&1
}
merge_cmd () {
if $base_present
then
"$merge_tool_path" -wait -merge -3 -a1 \
"$BASE" "$LOCAL" "$REMOTE" "$MERGED" >/dev/null 2>&1
else
"$merge_tool_path" -wait -2 \
"$LOCAL" "$REMOTE" "$MERGED" >/dev/null 2>&1
fi
}
translate_merge_tool_path() {
echo compare
}

23
third_party/git/mergetools/bc vendored Normal file
View file

@ -0,0 +1,23 @@
diff_cmd () {
"$merge_tool_path" "$LOCAL" "$REMOTE"
}
merge_cmd () {
if $base_present
then
"$merge_tool_path" "$LOCAL" "$REMOTE" "$BASE" \
-mergeoutput="$MERGED"
else
"$merge_tool_path" "$LOCAL" "$REMOTE" \
-mergeoutput="$MERGED"
fi
}
translate_merge_tool_path() {
if type bcomp >/dev/null 2>/dev/null
then
echo bcomp
else
echo bcompare
fi
}

1
third_party/git/mergetools/bc3 vendored Normal file
View file

@ -0,0 +1 @@
. "$MERGE_TOOLS_DIR/bc"

23
third_party/git/mergetools/codecompare vendored Normal file
View file

@ -0,0 +1,23 @@
diff_cmd () {
"$merge_tool_path" "$LOCAL" "$REMOTE"
}
merge_cmd () {
if $base_present
then
"$merge_tool_path" -MF="$LOCAL" -TF="$REMOTE" -BF="$BASE" \
-RF="$MERGED"
else
"$merge_tool_path" -MF="$LOCAL" -TF="$REMOTE" \
-RF="$MERGED"
fi
}
translate_merge_tool_path() {
if merge_mode
then
echo CodeMerge
else
echo CodeCompare
fi
}

25
third_party/git/mergetools/deltawalker vendored Normal file
View file

@ -0,0 +1,25 @@
diff_cmd () {
"$merge_tool_path" "$LOCAL" "$REMOTE" >/dev/null 2>&1
}
merge_cmd () {
# Adding $(pwd)/ in front of $MERGED should not be necessary.
# However without it, DeltaWalker (at least v1.9.8 on Windows)
# crashes with a JRE exception. The DeltaWalker user manual,
# shows $(pwd)/ whenever the '-merged' options is given.
# Adding it here seems to work around the problem.
if $base_present
then
"$merge_tool_path" "$LOCAL" "$REMOTE" "$BASE" -merged="$(pwd)/$MERGED"
else
"$merge_tool_path" "$LOCAL" "$REMOTE" -merged="$(pwd)/$MERGED"
fi >/dev/null 2>&1
}
translate_merge_tool_path () {
echo DeltaWalker
}
exit_code_trustable () {
true
}

18
third_party/git/mergetools/diffmerge vendored Normal file
View file

@ -0,0 +1,18 @@
diff_cmd () {
"$merge_tool_path" "$LOCAL" "$REMOTE" >/dev/null 2>&1
}
merge_cmd () {
if $base_present
then
"$merge_tool_path" --merge --result="$MERGED" \
"$LOCAL" "$BASE" "$REMOTE"
else
"$merge_tool_path" --merge \
--result="$MERGED" "$LOCAL" "$REMOTE"
fi
}
exit_code_trustable () {
true
}

15
third_party/git/mergetools/diffuse vendored Normal file
View file

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

14
third_party/git/mergetools/ecmerge vendored Normal file
View file

@ -0,0 +1,14 @@
diff_cmd () {
"$merge_tool_path" --default --mode=diff2 "$LOCAL" "$REMOTE"
}
merge_cmd () {
if $base_present
then
"$merge_tool_path" "$BASE" "$LOCAL" "$REMOTE" \
--default --mode=merge3 --to="$MERGED"
else
"$merge_tool_path" "$LOCAL" "$REMOTE" \
--default --mode=merge2 --to="$MERGED"
fi
}

26
third_party/git/mergetools/emerge vendored Normal file
View file

@ -0,0 +1,26 @@
diff_cmd () {
"$merge_tool_path" -f emerge-files-command "$LOCAL" "$REMOTE"
}
merge_cmd () {
if $base_present
then
"$merge_tool_path" \
-f emerge-files-with-ancestor-command \
"$LOCAL" "$REMOTE" "$BASE" \
"$(basename "$MERGED")"
else
"$merge_tool_path" \
-f emerge-files-command \
"$LOCAL" "$REMOTE" \
"$(basename "$MERGED")"
fi
}
translate_merge_tool_path() {
echo emacs
}
exit_code_trustable () {
true
}

16
third_party/git/mergetools/examdiff vendored Normal file
View file

@ -0,0 +1,16 @@
diff_cmd () {
"$merge_tool_path" "$LOCAL" "$REMOTE" -nh
}
merge_cmd () {
if $base_present
then
"$merge_tool_path" -merge "$LOCAL" "$BASE" "$REMOTE" -o:"$MERGED" -nh
else
"$merge_tool_path" -merge "$LOCAL" "$REMOTE" -o:"$MERGED" -nh
fi
}
translate_merge_tool_path() {
mergetool_find_win32_cmd "ExamDiff.com" "ExamDiff Pro"
}

18
third_party/git/mergetools/guiffy vendored Normal file
View file

@ -0,0 +1,18 @@
diff_cmd () {
"$merge_tool_path" "$LOCAL" "$REMOTE"
}
merge_cmd () {
if $base_present
then
"$merge_tool_path" -s "$LOCAL" \
"$REMOTE" "$BASE" "$MERGED"
else
"$merge_tool_path" -m "$LOCAL" \
"$REMOTE" "$MERGED"
fi
}
exit_code_trustable () {
true
}

1
third_party/git/mergetools/gvimdiff vendored Normal file
View file

@ -0,0 +1 @@
. "$MERGE_TOOLS_DIR/vimdiff"

1
third_party/git/mergetools/gvimdiff2 vendored Normal file
View file

@ -0,0 +1 @@
. "$MERGE_TOOLS_DIR/vimdiff"

1
third_party/git/mergetools/gvimdiff3 vendored Normal file
View file

@ -0,0 +1 @@
. "$MERGE_TOOLS_DIR/vimdiff"

27
third_party/git/mergetools/kdiff3 vendored Normal file
View file

@ -0,0 +1,27 @@
diff_cmd () {
"$merge_tool_path" \
--L1 "$MERGED (A)" --L2 "$MERGED (B)" \
"$LOCAL" "$REMOTE" >/dev/null 2>&1
}
merge_cmd () {
if $base_present
then
"$merge_tool_path" --auto \
--L1 "$MERGED (Base)" \
--L2 "$MERGED (Local)" \
--L3 "$MERGED (Remote)" \
-o "$MERGED" "$BASE" "$LOCAL" "$REMOTE" \
>/dev/null 2>&1
else
"$merge_tool_path" --auto \
--L1 "$MERGED (Local)" \
--L2 "$MERGED (Remote)" \
-o "$MERGED" "$LOCAL" "$REMOTE" \
>/dev/null 2>&1
fi
}
exit_code_trustable () {
true
}

11
third_party/git/mergetools/kompare vendored Normal file
View file

@ -0,0 +1,11 @@
can_merge () {
return 1
}
diff_cmd () {
"$merge_tool_path" "$LOCAL" "$REMOTE"
}
exit_code_trustable () {
true
}

36
third_party/git/mergetools/meld vendored Normal file
View file

@ -0,0 +1,36 @@
diff_cmd () {
"$merge_tool_path" "$LOCAL" "$REMOTE"
}
merge_cmd () {
if test -z "${meld_has_output_option:+set}"
then
check_meld_for_output_version
fi
if test "$meld_has_output_option" = true
then
"$merge_tool_path" --output="$MERGED" \
"$LOCAL" "$BASE" "$REMOTE"
else
"$merge_tool_path" "$LOCAL" "$MERGED" "$REMOTE"
fi
}
# Check whether we should use 'meld --output <file>'
check_meld_for_output_version () {
meld_path="$(git config mergetool.meld.path)"
meld_path="${meld_path:-meld}"
if meld_has_output_option=$(git config --bool mergetool.meld.hasOutput)
then
: use configured value
elif "$meld_path" --help 2>&1 |
grep -e '--output=' -e '\[OPTION\.\.\.\]' >/dev/null
then
: old ones mention --output and new ones just say OPTION...
meld_has_output_option=true
else
meld_has_output_option=false
fi
}

14
third_party/git/mergetools/opendiff vendored Normal file
View file

@ -0,0 +1,14 @@
diff_cmd () {
"$merge_tool_path" "$LOCAL" "$REMOTE" | cat
}
merge_cmd () {
if $base_present
then
"$merge_tool_path" "$LOCAL" "$REMOTE" \
-ancestor "$BASE" -merge "$MERGED" | cat
else
"$merge_tool_path" "$LOCAL" "$REMOTE" \
-merge "$MERGED" | cat
fi
}

36
third_party/git/mergetools/p4merge vendored Normal file
View file

@ -0,0 +1,36 @@
diff_cmd () {
empty_file=
# p4merge does not like /dev/null
if test "/dev/null" = "$LOCAL"
then
LOCAL="$(create_empty_file)"
fi
if test "/dev/null" = "$REMOTE"
then
REMOTE="$(create_empty_file)"
fi
"$merge_tool_path" "$LOCAL" "$REMOTE"
if test -n "$empty_file"
then
rm -f "$empty_file"
fi
}
merge_cmd () {
if ! $base_present
then
cp -- "$LOCAL" "$BASE"
create_virtual_base "$BASE" "$REMOTE"
fi
"$merge_tool_path" "$BASE" "$REMOTE" "$LOCAL" "$MERGED"
}
create_empty_file () {
empty_file="${TMPDIR:-/tmp}/git-difftool-p4merge-empty-file.$$"
>"$empty_file"
printf "%s" "$empty_file"
}

12
third_party/git/mergetools/smerge vendored Normal file
View file

@ -0,0 +1,12 @@
diff_cmd () {
"$merge_tool_path" mergetool "$LOCAL" "$REMOTE" -o "$MERGED"
}
merge_cmd () {
if $base_present
then
"$merge_tool_path" mergetool "$BASE" "$LOCAL" "$REMOTE" -o "$MERGED"
else
"$merge_tool_path" mergetool "$LOCAL" "$REMOTE" -o "$MERGED"
fi
}

16
third_party/git/mergetools/tkdiff vendored Normal file
View file

@ -0,0 +1,16 @@
diff_cmd () {
"$merge_tool_path" "$LOCAL" "$REMOTE"
}
merge_cmd () {
if $base_present
then
"$merge_tool_path" -a "$BASE" -o "$MERGED" "$LOCAL" "$REMOTE"
else
"$merge_tool_path" -o "$MERGED" "$LOCAL" "$REMOTE"
fi
}
exit_code_trustable () {
true
}

View file

@ -0,0 +1,32 @@
can_diff () {
return 1
}
merge_cmd () {
if $base_present
then
basename="$(basename "$merge_tool_path" .exe)"
if test "$basename" = "tortoisegitmerge"
then
"$merge_tool_path" \
-base "$BASE" -mine "$LOCAL" \
-theirs "$REMOTE" -merged "$MERGED"
else
"$merge_tool_path" \
-base:"$BASE" -mine:"$LOCAL" \
-theirs:"$REMOTE" -merged:"$MERGED"
fi
else
echo "$merge_tool_path cannot be used without a base" 1>&2
return 1
fi
}
translate_merge_tool_path() {
if type tortoisegitmerge >/dev/null 2>/dev/null
then
echo tortoisegitmerge
else
echo tortoisemerge
fi
}

48
third_party/git/mergetools/vimdiff vendored Normal file
View file

@ -0,0 +1,48 @@
diff_cmd () {
"$merge_tool_path" -R -f -d \
-c 'wincmd l' -c 'cd $GIT_PREFIX' "$LOCAL" "$REMOTE"
}
merge_cmd () {
case "$1" in
gvimdiff|vimdiff)
if $base_present
then
"$merge_tool_path" -f -d -c '4wincmd w | wincmd J' \
"$LOCAL" "$BASE" "$REMOTE" "$MERGED"
else
"$merge_tool_path" -f -d -c 'wincmd l' \
"$LOCAL" "$MERGED" "$REMOTE"
fi
;;
gvimdiff2|vimdiff2)
"$merge_tool_path" -f -d -c 'wincmd l' \
"$LOCAL" "$MERGED" "$REMOTE"
;;
gvimdiff3|vimdiff3)
if $base_present
then
"$merge_tool_path" -f -d -c 'hid | hid | hid' \
"$LOCAL" "$REMOTE" "$BASE" "$MERGED"
else
"$merge_tool_path" -f -d -c 'hid | hid' \
"$LOCAL" "$REMOTE" "$MERGED"
fi
;;
esac
}
translate_merge_tool_path() {
case "$1" in
gvimdiff|gvimdiff2|gvimdiff3)
echo gvim
;;
vimdiff|vimdiff2|vimdiff3)
echo vim
;;
esac
}
exit_code_trustable () {
true
}

1
third_party/git/mergetools/vimdiff2 vendored Normal file
View file

@ -0,0 +1 @@
. "$MERGE_TOOLS_DIR/vimdiff"

1
third_party/git/mergetools/vimdiff3 vendored Normal file
View file

@ -0,0 +1 @@
. "$MERGE_TOOLS_DIR/vimdiff"

15
third_party/git/mergetools/winmerge vendored Normal file
View file

@ -0,0 +1,15 @@
diff_cmd () {
"$merge_tool_path" -u -e "$LOCAL" "$REMOTE"
return 0
}
merge_cmd () {
# mergetool.winmerge.trustExitCode is implicitly false.
# touch $BACKUP so that we can check_unchanged.
"$merge_tool_path" -u -e -dl Local -dr Remote \
"$LOCAL" "$REMOTE" "$MERGED"
}
translate_merge_tool_path() {
mergetool_find_win32_cmd "WinMergeU.exe" "WinMerge"
}

23
third_party/git/mergetools/xxdiff vendored Normal file
View file

@ -0,0 +1,23 @@
diff_cmd () {
"$merge_tool_path" \
-R 'Accel.Search: "Ctrl+F"' \
-R 'Accel.SearchForward: "Ctrl+G"' \
"$LOCAL" "$REMOTE"
}
merge_cmd () {
if $base_present
then
"$merge_tool_path" -X --show-merged-pane \
-R 'Accel.SaveAsMerged: "Ctrl+S"' \
-R 'Accel.Search: "Ctrl+F"' \
-R 'Accel.SearchForward: "Ctrl+G"' \
--merged-file "$MERGED" "$LOCAL" "$BASE" "$REMOTE"
else
"$merge_tool_path" -X $extra \
-R 'Accel.SaveAsMerged: "Ctrl+S"' \
-R 'Accel.Search: "Ctrl+F"' \
-R 'Accel.SearchForward: "Ctrl+G"' \
--merged-file "$MERGED" "$LOCAL" "$REMOTE"
fi
}