2016-11-14 70 views
1

我有一個主人分支。我想從前兩個星期前的提交點,從主分支刪除提交。如何在沒有「還原」或「重新命名」命令的情況下從主服務器中刪除提交?

由於該分支中已有的回覆並且會導致問題,因此我無法使用git revert。我正在尋找一個解決方案來點HEAD到以前提交或SHA1分支,並設置SHA1作爲主。

+1

請顯示您擁有的提交圖和您想要的提交圖。任何其他方式思考git操作往往會產生混淆。 – jthill

回答

2

我正在尋找一個解決方案,指向HEAD以前的提交,並說這是主。

這就是reset確實,在當前分支是master

git reset SHA1 

這將重置當前分支,使其指向指定的SHA1(提交,分支,標籤,樹形ISH)。請注意,您的工作樹不會更改,因此如果它與SHA1的內容不同,則git diff將顯示已更改和/或未版本控制的文件。如果您希望工作樹匹配SHA1的內容,則使用--hard標誌。

請注意,如果您想將此更改的分支推送到之前已經推送過的分支,則需要使用-f標誌和git push,因爲歷史記錄已被重寫。 記住重寫公共分支歷史時的常見問題。

相關問題