我的朋友和我正在尝试处理iPhone项目,但使用github进行版本冲突管理存在问题。
示例:我们两个都在使用xCode 4.2(以及github mac客户端)处理某段代码
int majorVersion = 0;
1)他将代码更改为int majorVersion = 999;
提交更改;同步 - 没问题,最终会出现在github中
2)同时,我将代码更改为int majorVersion = 666;
然后:
int majorVersion = 666;
)int majorVersion = 666;
)错误:无法推送到不合格的目的地:HEAD目的地 refspec既不匹配遥控器上的现有参考也不匹配 refs /,我们无法根据源ref猜测前缀。 错误:无法将某些引用推送到 'https://github.com/XXX/XXX.git'
我们做错了什么?我删除了有趣的<<<<<<<<<<<和xCode中的HEAD声明(见下面的截图)?我们该怎么处理这种冲突?
答案 0 :(得分:1)
目前不在任何分支机构上。什么都没有提交(工作目录清洁)
(见this example)
这意味着你在DETACHED HEAD,并在“Not currently on any branch + git commit + checkout when not in any branch. Did i loose my changes?”中提到了解决方案(git log,git reflog,...)。
问题本身不是并发修改,而是首先在XCode4中检查代码的方式:任何签出标签或SHA1都会导致头部分离。
另见“Git Checkout reverted code to older commit, how to revert back?”中提出的决议。