关于git:如何使用egit和Eclipse合并文件并提交它们?

How to merge files and commit them using egit and Eclipse?

使用Eclipse egit将更改提交到主分支的建议步骤是什么?

我使用Eclipse和svn已有很长时间了,在那里一切正常。每当我要进行更改时,流程如下:

  • 与工作空间同步
  • 寻找冲突
  • 发现冲突时,请手动合并,然后将文件标记为已合并
  • 更新
  • 犯罪

在极少数情况下,我尝试不提交而提交一组文件时,会被警告,并且可以很好地纠正更改。

即使我更新有冲突的文件,也可以从中恢复,尽管我发现先与工作空间同步以识别和合并有冲突的文件比尝试在失败的更新后进行合并要好得多。因为冲突。

使用egit,我尝试的任何流程都无法正常工作。首先,如果我错误地从服务器进行了拉取并且存在冲突,那么我会被告知存在冲突,但是对此却感到非常困惑:我很难从服务器上获取最新信息,发现无法提交我的文件不管我做多少同步。甚至用最新的文件替换我的文件,然后再进行一次拉动再提交,似乎都不再起作用。

即使我遵循与svn相同的方法(先进行同步并手动合并有冲突的文件),然后再进行拉动,其后仍然会遇到上面提到的相同失败,就好像我将文件标记为合并wasn占不到。

所以...张空白的纸,当我进行一些更改时,建议将它们与服务器上的最新代码合并在一起(可能包括与我的更改集冲突的文件更改),这些建议是什么? ,要提交我的更改?如果有一个讨论这种问题的人,那么指向良好的egit教程的指针就可以了。


我不确定我是否正确理解了您的问题。但我现在正尝试给您一些提示。最近,我们将公司的存储库从CVS转换为git,这非常具有挑战性,因为我们有很多问题都集中在您要解决的同一问题上。

首先,我不得不说,来自SVN或CVS的软件将无法像您多年一样完成您的工作流程。

尤其是处理少量文件并仅通过sync更新这些文件将不适用于git。这是我与git同步时(从服务器获取最新信息)所采取的步骤。

  • 我Promise。尽早提交可以减轻很多痛苦!与远程存储库同步时,没有挂起的更改,例如,这可能会导致很多麻烦。
  • 我拿使用egit,您可以将操作放入工具栏,甚至为其创建快捷方式,这使获取操作非常舒适。
  • 提取的结果将显示在对话框中。我研究了这些变化,因为这是我认为最好的方法。您可以阅读所有提交消息,甚至双击它们以在后台打开一个提交并研究差异。是的,此对话框不是模式对话框。因此您可以在第二个监视器上移动它。
  • 我做了一个变基。这类似于合并,但不会保留您从其开始临时开发的那一刻起的信息。这是我公司做出的一项设计决策-与合并相比,更倾向于重新设置基础。
  • 如果您有冲突,可以使用合并工具解决。这与您使用CVS进行的同步非常相似。记住要做一个Add to index,因为它是新的mark as merged。之后,如果您进行了重新设置基准,则应该执行Rebase > Continue
  • 我推。如果在此期间没有人推动,就是这样。
  • 那是我的工作流程。如果这是正确的方向,那么我可以添加更多详细信息,说明为什么要执行多个步骤,以及我认为最好的方法是如何使用egit进行操作。