目前我正在使用这个别名在后台获取 master 然后切换到它。这种方式 Visual Studio 对我来说工作得最快:
[alias]
fetch-checkout = !git fetch -p && git fetch origin master:master && git checkout master
除此之外,我想做的是捕获当前分支名称并在之后将其删除。
在 Windows 上可以吗?
https://stackoverflow.com/a/12142066/7976758
问:如何在 Git 中获取当前分支名称?
A: git rev-parse --abbrev-ref HEAD
[alias]
fetch-checkout = !curbr=$(git rev-parse --abbrev-ref HEAD) && git fetch -p && git fetch origin master:master && git checkout master && git branch -D $curbr
由于您无法删除当前所在的分支,因此您需要为旧分支的名称使用某种临时存储。就像是:
git rev-parse --abbrev-ref HEAD > tmp.txt && git checkout master && git branch -d `cat tmp.txt` && rm tmp.txt
会工作,但你需要确保你没有覆盖任何东西> tmp.txt