[英]How to reset a remote git branch to its initial state
我正在處理一個從主分支分支出來的 git 分支,並且我已經對其進行了多次提交,但是現在我想將該分支重置為其早期狀態,當我第一次從主分支分支它時。 我的意思是我想刪除我已經提交的所有提交並將其推入其中,以便它與主要提交完全相同。
當我這樣做時:
git reset --hard origin/the-branch-name
它給了這個:
HEAD is now at 4176992 This is fifth commit to new branch
這是我最后一次提交。 但我想刪除我所做的所有提交。
請問,我怎樣才能做到這一點?
我建議只刪除分支。 如果您出於某種原因不想這樣做,您還可以還原您所做的所有提交。 在這種情況下,請查看git revert
命令
你很親密。 您嘗試將您的分支重置為遠程跟蹤分支,但由於您已經推送了您的分支,這沒有任何效果,因為它已經在同一個提交上。 相反,只需使用main
或origin/main
,它們可能比您的本地副本main
更新。 所以,你的命令是:
git reset --hard origin/main
請注意,您也可以刪除您的分支並重新創建它,正如其他人已經提到的那樣。 這效率稍低,因為您必須先離開您的分支,然后才能將其刪除。 最終結果將是相同的。
注意,因為你已經推送了你的分支,在你重置它(或重新創建它)之后,你第一次嘗試推送它時,你需要強制推送。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.