我在Github上有一个主分支(master)和一个用于实验性工作的分支。我进行了一些提交并将它们推送到了实验性分支,一切都很好。
现在,在另一台机器上,我尝试克隆我的存储库(git clone repository),然后切换到实验性分支(git checkout branchname),但每次这样做时我的head会被分离并且我不能推送我的更改。我做错了什么?我感觉我缺少了一些基本的git概念,但阅读随意的git手册并没有给我任何线索。
我是git新手,所以如果我像个白痴一样,我很抱歉,但我找不到任何可以帮助我重新连接head的文档。
编辑
我缺乏的概念是跟踪分支。现在我理解了这个概念,一切都变得清晰了。就我个人而言,我发现git branch --track
语法比git checkout -b branch-name origin/branch-name
要直观得多。
感谢您的帮助!
git switch
**,可以在不分离HEAD的情况下切换分支:请参见我的下面的答案。 - VonC