[英]Need to go back to prev commit in git,How?
我已經通過刪除某些文件修改了源目錄並進行了commit
。 然后我push origin master
送到遠程主機github。
現在我知道我需要那些文件才能正常運行。 現在,我需要一種方法來返回上一個commit
,然后push
送到遠程主機。
有可能這樣做嗎? 我對git很陌生,對此感到困惑。
提前致謝。
由於您已經推送了,所以我建議您反對Nikhil的解決方案,並建議您對最新提交執行“ git revert”,例如git revert HEAD
然后推送。 revert
命令將創建一個新的提交,以撤消指定提交的影響,並將其添加到您的存儲庫中。
git revert
創建一個新的提交,該提交撤消一個或多個先前的提交。 通常,這是撤消已經推送的提交的最佳方法。
例如,此命令將還原從提交abc1234
到最新的提交( HEAD
)的所有內容:
git revert abc1234..HEAD
您也可以使用git reset
,但是此命令會更改歷史記錄,並且會對使用存儲庫的其他任何人造成問題。 通常,僅當您要放棄尚未推送的更改(並且您確定將來不希望再返回)時才應使用此命令。
試試這些
git reset --hard SHAsumOfYourCommit
git reset --hard HEAD [your current head point]
git reset --hard HEAD^ [your previous head point]
假設我們有一個帶分支master的遠程myrepo,該遠程myrepo當前指向提交dd61ab32,您可以使用以下命令刪除最后一個提交。
git push myrepo +dd61ab32^:master
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.