我是Git客户端的新手,并且对其操作非常困惑。我非常熟悉其他版本工具,如SVN和CVS。我已经在STS中安装了Git插件,并检查了项目花费了大量时间。我的操作系统是Windows-7,在STS Eclipse 2.8.1上使用Eclipse Git 1.3.0。
最初我不知道一个简单的提交操作'实际上并没有将文件签入到服务器存储库,而是必须推送到上游'。只要没有发现冲突就可以了,但是当我想执行像
这样的操作时会给它带来很大的麻烦当我说不起作用时,我的意思是Git抛出异常。
以下是我过去常遇到的一些错误。
执行merge命令时捕获到异常。 org.eclipse.jgit.errors.MissingObjectException:缺少提交 c6c4fce9e8a0a228ac1d60f4e5549b5adafa638a
缺少未知的c6c4fce9e8a0a228ac1d60f4e5549b5adafa638a
查找提交
AnyObjectId [c6c4fce9e8a0a228ac1d60f4e5549b5adafa638a]
执行merge命令时捕获到异常。 org.eclipse.jgit.errors.MissingObjectException:
- 醇>
在:"合并期间发生内部错误 参/遥控器/来源/主"
如果发生冲突或提交问题,我不得不重新设置工作区,并重新完成所有工作。
我觉得很多人会遇到这样的问题,我希望看到我能够更好地解决这个问题。
感谢对此的任何评论。
答案 0 :(得分:5)
这些错误通常反映了尚未正确更新的回购(git fetch
或git pull
),并且缺少完成这些操作的引用(合并或推送)。
This thread说明了合并时“丢失提交”错误。
我不得不从本机git中解决问题 在那之后,由于某些原因我不明白,我的一些源文件有一个“修改过的”标记,就像合并的源文件没有在本地提交或类似的东西。
我必须手动提交合并的代码。推进仍然失败。我不得不再次拉。
EGit的主要问题是确保您没有处于分离的HEAD模式(详见“can't push upstream using EGit”)。
除此之外,最好先跟随Egit tutorial和manual进行训练(当然,首先要了解git,git tutorials,gitimmersion。