讓程式回到提交前的樣子:兩種解決方法:回退(reset)、反做(revert)
方法一:git reset
原理:git reset的作用是修改head的位置,即將head指向的位置改變為之前存在的某個版本
適用場景:如果想恢復到之前某個提交的版本,且那個版本之後提交的版本我們都不要了,就可以用這種方法。
具體操作:
1. 檢視版本號:可以使用命令「git log」檢視:
2. 使用「git reset --hard 目標版本號」命令將版本回退
再用「git log」檢視版本資訊,此時本地的head已經指向之前的版本:
3. 使用「git push -f」提交更改:此時如果用「git push」會報錯,因為我們本地庫head指向的版本比遠端庫的要舊
方法二:git revert
原理:git revert是用於「反做」某乙個版本,以達到撤銷該版本的修改的目的。比如,我們commit了三個版本(版本
一、版本二、 版本三),突然發現版本二不行(如:有bug),想要撤銷版本二,但又不想影響撤銷版本三的提交,就可以用 git revert 命令來反做版本二,生成新的版本四,這個版本四里會保留版本三的東西,但撤銷了版本二的東西。
適用場景:如果我們想撤銷之前的某一版本,但是又想保留該目標版本後面的版本,記錄下這整個版本變動流程,就可以用這種方法。
1. 檢視版本號:
2.使用「git revert -n 版本號」反做,並使用「git commit -m 版本名」提交:
(1)反做,使用「git revert -n 版本號」命令。如下命令,我們反做版本號為8b89621的版本:
git revert -n 8b89621019c9adc6fc4d242cd41daeb13aeb9861
注意: 這裡可能會出現衝突,那麼需要手動修改衝突的檔案。而且要git add 檔名。
(2)提交,使用「git commit -m 版本名」,如:
git commit -m "revert add text.txt"
此時可以用「git log」檢視本地的版本資訊,可見多生成了乙個新的版本
3.使用「git push」推上遠端庫
Git恢復到原來的版本
參考 2018 12 9 修改更新 在利用github實現多人合作程式開發的過程中,我們有時會出現錯誤提交的情況,此時我們希望能撤銷提交操作,讓程式回到提交前的樣子,本文總結了兩種解決方法 回退 reset 反做 revert git的版本管理,及head的理解 使用git的每次提交,git都會自動...
git 合併分支到master
git clone git 位址,然後開啟命令框 1.建立新分支並切換到新分支 git checkout b 新分支 git branch 能檢視到本地所有分支 master 新分支 2.提交新分支到遠端倉庫 git push origin 新分支 master 在master分支上執行 3.提交分...
git 合併分支到master
git 合併分支到master 假如我們現在在dev分支上,剛開發完專案,執行了下列命令 git add git commit m dev git push u origin dev 然後我們要把dev分支的 合併到master分支上 該如何?首先切換到master分支上 git checkout ...