2016-12-28 275 views
1

我需要一些Git協助。 所以,我們有一個開發和測試環境。開發人員正在將git用於'開發'分支,然後將其推送到測試環境,內部利益相關方將審查這些更改。現在問題是,開發團隊有10個提交被傳遞給Test env,其中的利益相關者決定其中8個確定,最終將其推送給Prod。其他2個需要從Test env中丟棄。那些被丟棄的提交將在稍後使用,作爲增強,因此他們可以留在開發環境。直到它們被使用。刪除git遠程分支提交

有沒有辦法做到這一點?我需要使用git rebase或類似的東西嗎? 對不起,如果我的問題聽起來太含糊。

+0

如果'develop'分支的變化得到在'Test'環境中發佈,你從哪個分支發佈到'Dev'環境? –

+2

不要將事情合併到尚未批准的開發中,纔是真正的答案。無論用什麼方法取消這些東西都會導致錯誤並最終導致更多的工作。 – bcmcfc

回答

0

可以使用櫻桃選秀權選擇承諾在開發

+0

櫻桃採摘爲我工作,謝謝 –

0

合併是的,你可以做簡單的interactive rebase

$ git log    # copy the commit-hash before of the commit want to discard 
$ git rebase -i <commit-hash> 

編輯器將打開這些提交messase的列表。然後在您想要放棄的commit-hash前寫上#(評論)。

0
  1. 從dev分支中,您需要重置這2個丟棄的提交。
  2. 創建一個名爲back_commits的新的基於分支的開發。由於它是從開發分支,back_commits應該有那些2次丟棄的提交,如果有一天你需要使用這些提交,只是挑櫻桃他們到任何分支你希望他們在