0

目前我正在使用这个别名在后台获取 master 然后切换到它。这种方式 Visual Studio 对我来说工作得最快:

[alias]
  fetch-checkout = !git fetch -p && git fetch origin master:master && git checkout master

除此之外,我想做的是捕获当前分支名称并在之后将其删除。

在 Windows 上可以吗?

4

2 回答 2

3

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
于 2018-12-13T21:28:10.737 回答
2

由于您无法删除当前所在的分支,因此您需要为旧分支的名称使用某种临时存储。就像是:

git rev-parse --abbrev-ref HEAD > tmp.txt && git checkout master && git branch -d `cat tmp.txt` && rm tmp.txt

会工作,但你需要确保你没有覆盖任何东西> tmp.txt

于 2018-12-13T21:29:33.863 回答