全部
我正试图解决以下情况。
我正在开发一个程序,其代码在Git上。有一次我需要在Mac上更新代码。拉动失败,因为发生了未提交的更改。 Xcode文件是未提交的文件之一。
我尝试提交文件并再次拉出,但是很不幸,我遇到了冲突。我试图解决与vi的冲突并手动编辑,但是我猜Xcode内部文件不是要手动编辑的。
现在,我可以返回并检出最后一个已知的提交,显然它不会提供最新的消息。
所以我做完之后
git checkout <last_known_commit>
我要怎么做才能引入源代码?
或者我可以从主服务器重置文件?
请帮助。
谢谢。
答案 0 :(得分:1)
我还不能发表评论,所以在这里我的想法: 像通常在git中一样,您可以选择许多选项来解决问题。快速解决方案是reset/revert your file并进行推送。由于您已经推送了代码,因此对于其他人来说,这将在存储库中可见,但是它将起作用。 @argo提出了一种更优雅,更复杂的解决方案。
关于Xcode IDE文件的注释:如果这些文件对于每个开发人员而言都是实用的,则将这些文件插入各自的git ignore中是有意义的。我记得以前添加了一些Xcode文件,但是我不记得是哪个。我相信您会在网上找到建议。
答案 1 :(得分:0)
您可以按照以下步骤操作:
检出到您上次本地提交的版本。
git checkout <commit id>
然后从那里创建一个分支
git checkout -b my-branch
对该分支进行git远程推送。确保分支与远程服务器上的所有本地更改一起存在
现在要进行git reset hard
git reset --hard origin/master
Tada,您正在更新远程主服务器。现在执行合并以将您的本地更改更新到主版本
git checkout master
git merge my-branch