使用git開發的過程中,存在誤提交的時候怎麼辦呢?不用慌張,強大的git提供了兩種版本回退的方式,可以讓你恢復提交之前的內容:
通過reset的方式,把head指標指向之前的某次提交,reset之後,後面的版本就找不到了
操作步驟如下:
1、在gitlab上找到要恢復的版本號,如:
139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96
2、在客戶端執行如下命令(執行前,先將本地**切換到對應分支):
git reset --hard 139dcfaa558e3276b30b6b2e5cbbb9c00bbdca96
3、強制push到對應的遠端分支(如提交到develop分支)
git push -f -u origin develop
ok,現在到伺服器上看到的**就已經被還原回去了。這種操作存在乙個問題,伺服器上的**雖然被還原了,但假如有多個人在使用,他們本地的版本依然是比伺服器上的版本高的,所以,別人再重新提交**的話,你撤銷的操作又會被重新,你上面的操作也就白操作了。解決辦法是,讓別人把本地的分支先刪掉,然後重新從伺服器上拉取分支
這種方式不會把版本往前回退,而是生成乙個新的版本。所以,你只需要讓別人更新一下**就可以了,你之前操作的提交記錄也會被保留下來
操作步驟如下:
1、找到你誤提交之前的版本號
2、git revert -n 版本號
3、git commit -m ***x 提交
4、git push 推送到遠端
ok,版本還原了,通知其他人更新一下**吧
Git版本回退
1 檢視檔案修改歷史 git log 返回的是commit後的操作記錄 git log pretty oneline 也可以使用這個命令格式化日誌輸出 2 版本回退 git reset hard head 回退到上乙個版本 git reset hard head 100 會退到第100個版本,例如現...
git版本回退
先說今天遇到的問題,看到乙個config.php的配置檔案一直在修改的狀態下,但是和遠端的config.php是不一致的,我不需要提交它,但是看它在 modified的狀態下,很不爽,想刪除它,git rm config.php,然後git push了下,結果不僅把本地的config.php乾掉了,...
git版本回退
把修改後的版本通過命令提交到版本庫 第一步 git add 檔名 字尾 第二步 git commit m commit id 但是有時候想回去怎麼辦呢?當然萬能的git給我們提供了方法的。我們先檢視一下最近到最遠的提交紀錄操作如下 在命令航輸入 git log 會顯示提交日誌,但是嫌輸出過多怎麼辦,...