如何放棄git本地分支的變化? 例如,本地分支版本:A-> B-> C 現在我處於A版本,並且它與最新版本C有一些衝突。 我想丟棄本地更改並且拉取最新版本C.如何丟棄git本地分支的變化?
$ git pull
我會遇到一些錯誤。並且有很多文件,所以我不需要做很多次$ git co files
有什麼更好的辦法嗎?
如何放棄git本地分支的變化? 例如,本地分支版本:A-> B-> C 現在我處於A版本,並且它與最新版本C有一些衝突。 我想丟棄本地更改並且拉取最新版本C.如何丟棄git本地分支的變化?
$ git pull
我會遇到一些錯誤。並且有很多文件,所以我不需要做很多次$ git co files
有什麼更好的辦法嗎?
如果您有要放棄未提交的修改,使用:
$ git reset --hard
這相當於
$ git reset --hard HEAD
這將刪除所有本地提交的更改。如果您想從本地分支中刪除一些違規提交,請嘗試將其倒轉:
$ git reset --hard HEAD^ #moves HEAD back by one commit
或
$ git reset --hard HEAD~3 #moves HEAD back by 3 commits
請謹慎使用,因爲您將無法撤消這些操作。清理完本地分行後,請使用git pull
獲取最新的代碼。
git fetch
git reset --hard origin/master
'git reset --hard origin/master'正是我一直在尋找的! – mystarrocks
這是假設你已經在某個時間登記到遠程,這同樣適用於本地回購?我可以做'git reset --hard otherLocalBranch'來達到同樣的效果嗎? –
這正是我想要放棄我從另一個分支錯誤地提交的提交。謝謝@Onlyjob –
如果您已經推你的分支,你需要小心 - 硬,因爲它可以搞砸歷史復位的遠程服務器。 –
這不會刪除未提交的文件。您將不得不手動刪除這些文件。 –