2012-02-23 179 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