熟練使用git之git撤回操作
需要關(guān)注持續(xù)更新的朋友可以關(guān)注下面的鏈接:
[git操作合集地址](https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzI5MjY4OTQ2Nw==&action=getalbum&album_id=2966484282531643393&scene=173&from_msgid=2247484185&from_itemidx=1&count=3&nolastread=1#wechat_redirect)
1、執(zhí)行了merge但沒有commit
```
git merge --abort
```
2、撤回上次或者上上次提交代碼
要撤銷上一次提交或上上次提交的代碼,有兩種常用的方法可以實現(xiàn):
2.1. 使用 `git revert` 撤銷提交:
? ?- 撤銷上一次提交:`git revert HEAD`
? ?- 撤銷上上次提交:`git revert HEAD^`
? ?
? ?這些命令將創(chuàng)建一個新的提交,將先前提交的更改撤銷,并將更改應(yīng)用于代碼庫??梢允褂?`-n` 選項來阻止自動提交,并在撤銷所有所需的提交后手動提交更改。
2.2. 使用 `git reset` 回退提交:
? ?- 回退上一次提交:`git reset HEAD~1`
? ?- 回退上上次提交:`git reset HEAD~2`
? ?注意,`git reset` 命令是危險的操作,它會丟棄提交歷史記錄,并且如果已經(jīng)將更改推送到遠程倉庫,則可能會導(dǎo)致問題。
3、撤銷到指定的提交
3.1. 使用 `git log` 命令查找要回退到的提交的 SHA-1 值或引用名稱。例如,要查找提交記錄并找到要回退到的提交的 SHA-1 值,使用以下命令:
? ?```
? ?git log --oneline
? ?```
? ?此命令將顯示提交記錄列表,每個提交記錄都有一個唯一的 SHA-1 值和提交消息。
3.2. 使用 `git reset` 命令將分支回退到指定的提交。例如,如果要回退到 SHA-1 值為 `abc123` 的提交,使用以下命令:
? ?```
? ?git reset abc123
? ?```
? ?默認情況下,`git reset` 使用 "mixed" 模式,這將保留提交之后的更改,但將其放置在暫存區(qū)中。如果希望徹底丟棄提交之后的所有更改,使用 `--hard` 選項:
? ?```
? ?git reset --hard abc123
? ?```
?注意,這將刪除提交歷史記錄,并且如果已經(jīng)將更改推送到遠程倉庫,則可能會導(dǎo)致問題。