我正在尝试执行用于合并分支的配置命令。我看到有一些可用的变量,如 $BASE $LOCAL 和 $REMOTE 这些变量包含文件名,后跟基本、本地、远程字符串。
是否有任何变量包含这 3 个分支的名称?
可以使用指向这些提交的 Refs -ORIG_HEAD
和MERGE_HEAD
. 该脚本展示了如何为它们获取合适的名称,尽管这些提交可能有多个名称:
WORK_LOCAL="$WORK/$(git name-rev ORIG_HEAD | cut -d' ' -f 2)"
WORK_REMOTE="$WORK/$(git name-rev MERGE_HEAD | cut -d' ' -f 2)"
你也可以使用git describe --all ORIG_HEAD
.
编辑:有关如何在 Windows 下this page
设置的示例,请参阅。mergetool
要使用 DiffMerge,如果您的示例命令行是正确的,您将省略mkdir
andcp
命令并替换该行:
meld "$WORK_LOCAL/${FILE}" "$OUTPUT/${FILE}" "$WORK_REMOTE/${FILE}"
和:
"C:/Program Files/SourceGear/Common/DiffMerge/sgdm.exe" --title1="$WORK_LOCAL = Current branch" --title2="$BASE = Common ancestor" --title3="$REMOTE = Merging branch" /m /r="$MERGED" "$LOCAL" "$BASE" "$REMOTE"