我目前在我的主分支上。我需要一些CSS的幫助,但不幸的是我的網站受到身份驗證的保護。這使得其他人很難來我的網站進行調試。我打算開始一個新的分支,fixing_css,第一次提交刪除所有身份驗證機制。Git:創建一個分支。提交一堆。回到主分支,只想合併某些提交
然後我想提交對CSS做出的更改。之後,除了第一次提交(因爲我希望我的站點受我的身份驗證系統保護)之外,我想將該分支合併回主站。
我該如何去做呢?
我目前在我的主分支上。我需要一些CSS的幫助,但不幸的是我的網站受到身份驗證的保護。這使得其他人很難來我的網站進行調試。我打算開始一個新的分支,fixing_css,第一次提交刪除所有身份驗證機制。Git:創建一個分支。提交一堆。回到主分支,只想合併某些提交
然後我想提交對CSS做出的更改。之後,除了第一次提交(因爲我希望我的站點受我的身份驗證系統保護)之外,我想將該分支合併回主站。
我該如何去做呢?
你可以重訂設定的提交到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
」之上「。
除了定期底墊中,你也可以使用交互式的rebase擺脫你不想要任何改變:
git rebase -i master
這將產生一個編輯列出所有你的提交。如果您想刪除提交,只需在保存文件之前刪除編輯器中的行即可。這樣,您可以在合併之前刪除儘可能多的提交。