如何重置我的所有本地分支,一次就像远程存储库中的分支一样?
我的本地存储库中有42个分支,但我的远程存储库中只有21个分支。我不需要其他分支,我只需要21个分支(本地和远程同名)。
我知道
git fetch origin
git reset --hard origin/master
但是我希望所有21个分支一起重新设置为原始状态,并删除所有其他分支不在原点。
答案 0 :(得分:1)
如果你在Unix上,你可以使用shell脚本。
这将首先删除所有您的本地分支,然后从原点创建所有分支。
# make sure we are currently on no branch, so every branch can be deleted
git checkout --detach master
# delete all local branches
git branch | grep -v "HEAD detached" | xargs git branch -D
# re-create all branches from origin
while read b; do git branch ${b#origin/} $b; done < <(git branch -r | grep 'origin/')
# check out the new master
git checkout master