使用自定义驱动程序在
Git中合并时,传递给驱动程序的
Git属性/参数的完整文件路径是什么?
例如:
driver = filfre %O %A %B
这三个文件的完整文件路径是什么,%O,%A和%B?
-皮匠
最佳答案 您可以按照我发布的关于
How do I tell git to always select my local version for conflicted merges on a specific file?的示例进行操作.
该场景涉及合并驱动程序,您可以调整它以显示这三个变量.
keepmine.sh
echo
echo origin $1
echo origin content:
cat $1
echo
echo local $2
echo local content:
cat $2
echo
echo remote $3
echo remote content:
cat $3
exit 0
它归还给我的是:
C:\Prog\Git\tests\CopyMerge>git merge hisBranch
origin .merge_file_a08152
origin content:
b
local .merge_file_b08152
local content:
b
myLineForB
remote .merge_file_c08152
remote content:
b
hisLineForB
所以在这个例子中,它似乎生成了三个本地临时文件,名称为merge_file_xxx.
正如BlackEye在评论和BlackEye的答案“Git Merge Driver – How to find out full path of merged file?”中所提到的,commit ef45bb1引入了(git 2.5,2015年7月)带有%P的外部驱动程序的原始路径.