我有以下git别名
[alias] remaster = !"git checkout $1 & git diff-tree -r --patch --diff-filter=DM $1..master"
手动使用上述命令时,我得到以下标准:
$ git diff-tree -r --patch development..master --diff-filter=DM diff --git a/subfolder/subfile.exe b/subfolder/subfile.exe deleted file mode 100644 index e69de29..0000000 diff --git a/virus.exe b/virus.exe deleted file mode 100644 index e69de29..0000000
使用别名时,输出不可用,因此我无法使用它修补:
$ git remaster development
Git别名主要用于调用 一 其他 吉特
[alias] aa = commit --amend -a --no-edit
注意,上面只说 commit git commit . 总之,有一个常见的技巧仍然可以通过使用虚拟shell函数来实现您想要的:
commit
git commit
[alias] remaster = "!f() { git checkout $1 && git diff-tree -r --patch --diff-filter=DM $1..master | git apply; }; f"
)我也换了单曲 & 正确地说 && .)
&
&&