事由:作為倉庫的master,一時老眼昏花,把同事說的不合並看成了合並,直接合並了。
解決方法:
一、粗魯的代碼回退--直接在遠程倉庫合並
1. 在gitLab遠程倉庫中,基於想回退的代碼的節點(commit),直接拉出一個分支(例:masterDuplicate);
2. 將原來的老分支(例如develop)直接刪除掉;
3. 重復第一步,create from分支選擇第一步拉出來的分支,拉出來的分支名為原來的develop分支。
二、優雅的代碼回退-- 本地使用git命令進行回退
1. 本地分支保持最新代碼;
2. 使用git log查看提交日志,找到想回退的節點,例如:f11ac640b63e3b254532c4d398ec3fa1121f7f87
3. 使用git reset --hard f11ac640b63e3b254532c4d398ec3fa1121f7f87回退到想要回退的節點。
3.使用git status命令可以查看修改狀態,因為你是在回退,git status會提示你更新代碼;
4. 這個時候,直接去遠程倉庫刪除原有分支;
5. 使用git push命令重新推一下分支。
綜上:
這里只列了兩種方案,其實應該還可以用sourceTree回退,因為今天着急解決問題,所以沒有一一嘗試,mark一下,以后有時間折騰一下。
(個人喜歡第一種方法,不用敲命令,可能我不是一個合格的程序員吧hhhhh周末愉快)