1

我已经开始与另一位开发人员一起开展一个项目,并且刚刚意识到我的 GIT 知识是多么有限。这是交易:

  • 这周我一直在进行更改,并希望将它们推向掌握
  • 我的同事昨天对同一个项目进行了更改,并在昨晚推送了它们

我应该如何进行?

如果我尝试推送我的更改,我会收到错误,因为我的代码已过时。

所以,我被告知我应该 STASH 我的更改,然后将他的更改拉入我的工作目录,然后 STASH APPLY 我的更改回来。

但是当我这样做时,我会遇到冲突错误,因为我们都更改了项目文件。

如果我然后查看文件以查看冲突,我发现它们没有像正常冲突那样“标记”,所以我无法解决问题!我什至无法比较我的两个版本,因为冲突的版本是旧版本。

任何帮助,非常感谢。

4

1 回答 1

4
  1. 如果您跟踪了已更改的文件,请添加并提交它们或存储它们
  2. git fetch来自远程分支的更改
  3. git rebase您在刚刚获取的远程分支中建立的提交历史记录之上的提交
    • 您可能需要在此处解决冲突。如果是这样,Git 会告诉你。您通常可以使用默认的“mergetool”来生成保存文件以解决冲突。
  4. git push您的历史记录现在包含您最新的一系列提交。您的朋友也可以按照相同的程序将您的提交记录到他的本地历史记录中。

阅读官方文档总是很重要的。此外,我发现这个视觉备忘单也很有帮助。

于 2013-02-07T15:48:22.680 回答