我正在通过Xcode使用git。几天前,我在项目中添加了一个远程存储库。我没有注意到它然后由于某种原因Xcode取消选择master分支作为我当前的分支,并且在过去两天我的所有提交都是(...)< - 在哪里?这就是问题所在。 现在,每次我尝试推送我的提交时,我都会收到“当前分支无法确定”的消息。我可以结账主人,但后来我将失去两天的承诺。
我现在如何选择主分支作为当前分支而不会丢失进度?
我尝试从最后一次主提交中分支,但它仍然无处可去,因为没有办法保存更多最近的提交。
答案 0 :(得分:1)
将我的评论转到答案:
一个解决方案是创建一个临时分支(通过命令行),它将包含所有提交,然后将其合并到master中.XCode-9与它已合并的新git工具相当有点错误(并且它不再显示当前分支)..
要做到这一点,你可以这样做:
git checkout -b "Temporary"
将切换到名为" Temporary"。
的分支然后你做:
git commit -m "Your Changes".
将更改(如果有)提交给"临时"。
然后你做:
git push origin -u "Temporary"
将推动"临时"分支到上游并跟踪它的变化。最后,您可以将该分支合并到master或git pull origin master
以将master合并到该分支中。
虽然它已经基于主人,但除非有人在你工作的时候将其更改为master,否则可能没有必要拉。
在进行不熟悉的git操作之前,我总是备份整个项目文件夹,里面有一个.git
个隐藏文件夹。这将备份您的提交和项目。
不确定我是否应该提及这一点,但通常你总是希望在除了master之外的其他分支上工作.. IE:Feature/BlahBlah
然后合并到master。