0

我的本地存储库落后于远程 Git 存储库的更新。我在本地进行了更新,而没有先从远程获取最新更新。

我确实在本地提交了我的更新,所以如果我要强制推送我的更新,它会覆盖其他人的工作吗?我们主要处理相同的文件。

我真的不明白为什么会发生合并?我真的不知道是什么原因造成的,有没有人可以帮助我并解释这是如何发生的以及如何避免它?因为如果发生合并,文件的内容会被重复,例如

<<<<<<<update...
4

2 回答 2

1

您应该首先将更改拉入本地存储库。修复所有合并冲突,然后将结果推送回 repo。

您所描述的是合并冲突。当您和其他人更改同一行代码时,就会发生这种情况,git 不知道要保留哪一行。因此它会放置标记 (>>>>,====, <<<<),以便您可以手动编辑文件并选择如何解决冲突。看到这个: http: //githowto.com/resolving_conflicts

使用 git 时,最好经常获取或拉取。因此,当您开始处理项目时,请先拉动,然后再处理您的功能。当您准备好提交时,再进行一次拉取,如果有冲突,请合并冲突,然后将代码向上推。

这是一个很好的 git 教程: http: //gitimmersion.com/

于 2013-08-15T01:44:49.273 回答
1

在你推它之前,你应该拉它。当您从远程服务器拉取时,将发生合并。不用担心,因为 git 会为你处理大部分工作,当你看到 <<<<<< 时,就会发生冲突,你可以使用:

git mergetool

另请参阅此问题,阅读每个答案,我认为它会对您有所帮助:

如何解决 Git 中的合并冲突?

于 2013-08-15T01:48:24.090 回答