不使用shell,我可以在git别名上使用参数吗?
例如,我的主要远程分支总是被称为“上游”,有时git会丢失我本地分支的引用并说:
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.
git pull <remote> <branch>
If you wish to set tracking information for this branch you can do so with:
git branch --set-upstream-to=<remote>/<branch> master
我想要一个别名,例如
[alias]
reup = branch --set-upstream-to=upstream/$1 $1
所以我可以输入git reup master
(或者甚至更好,将git配置为始终将远程视为“上游”?)
答案 0 :(得分:3)
不使用shell?不,但是有了shell,确定:
[alias]
brup = "!f() { git branch --set-upstream-to=${2:-origin}/$1 $1; }; f"
现在,您可以运行git brup dev
将上游设置为origin/dev
或git brup dev upstream
,将上游设置为upstream/dev
。