我正在一个临时分支foo
上工作。满意更改后,我想将master
(当前不是)移动到foo
的HEAD。我认为在Git上执行此操作的常见方法是:
git checkout master
git reset --hard foo
问题是,当我执行git checkout master
时,Git修改了工作目录中的文件,而我的IDE却发疯了。我必须将其关闭然后再次打开。
我的第一个解决方法是:
git branch -D master && git checkout -b master
但是这使我失去了master
的上游设置。以下实际上有效:
git branch -D master && git checkout -b master && git push --set-upstream origin master
但是命令太大。
是否仅使用Git有更好的选择?即没有在路径中添加批处理文件或宏...
git switch -C master
这将使主节点指向当前HEAD,保留分支具有的任何配置(例如上游),然后对该分支执行git checkout
。