2012-02-23 146 views
4

我是git的新手。我有几个本地提交,但我想从存储库中提取最新的代码,但不想推送我的代码。然而,混帐拉,创建不必要的合并。什么是正确的方法来做到这一点,即更新您的本地存储库而不会丢失更改。本地提交后Git拉

回答

7

您正在寻找的工具是git rebase,但您应该在开始使用它之前查看相关文档。在本地分公司进行开发也是一种很好的做法,可以减少这种操作的开销。

当您感觉舒适时,您可以使用git pull --rebase来使用rebase而不是merge来解决pull之后的差异 - 但是,请先阅读文档,因为这可能会丢失数据或者如果使用不当会导致头痛。这是一个有用但危险的工具。

+0

谢谢丹尼尔。我明白起源大师和我们当地的回购是两个独立的分支。因此,当有人在我的本地提交和我的存储库的推/拉之间推送某些内容时,看到合并是正常的,或者我应该重新设置以避免这种情况。 – 2012-02-23 03:28:49

+0

rebase有效地将你的提交移植到新的头部,就好像你最初在那里写的那样。它应该避免合并提交。 “应该”部分是......复杂的。实际上,这是一个品味问题。除非您有充分的理由使用它,否则我建议您避免使用rebase。 – 2012-02-23 06:12:09