2010-09-15 79 views
4

我目前在我的主分支上。我需要一些CSS的幫助,但不幸的是我的網站受到身份驗證的保護。這使得其他人很難來我的網站進行調試。我打算開始一個新的分支,fixing_css,第一次提交刪除所有身份驗證機制。Git:創建一個分支。提交一堆。回到主分支,只想合併某些提交

然後我想提交對CSS做出的更改。之後,除了第一次提交(因爲我希望我的站點受我的身份驗證系統保護)之外,我想將該分支合併回主站。

我該如何去做呢?

回答

5

你可以重訂設定的提交到master分支:

如果你有這樣的:

master: A--B--C--D 
        \ 
fixing_css:  E--F--G--H 

並且希望此:

master: A--B--C--D--F--G--H 

然後運行該命令來自fixing_css分支:

git rebase --onto master E fixing_css 

(其中E是,所述第一SHA提交的分支)

的「變基」命令採用一組提交的,並把它們放到一個新的「基礎」。在這種情況下,你說「取E之後出現的一組提交,並且上升到fixing_css的末尾,並將它們放在master之上「。

1

除了定期底墊中,你也可以使用交互式的rebase擺脫你不想要任何改變:

git rebase -i master 

這將產生一個編輯列出所有你的提交。如果您想刪除提交,只需在保存文件之前刪除編輯器中的行即可。這樣,您可以在合併之前刪除儘可能多的提交。

相關問題