熟练使用git之git撤回操作
需要关注持续更新的朋友可以关注下面的链接:
[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、执行了merge但没有commit
```
git merge --abort
```
2、撤回上次或者上上次提交代码
要撤销上一次提交或上上次提交的代码,有两种常用的方法可以实现:
2.1. 使用 `git revert` 撤销提交:
- 撤销上一次提交:`git revert HEAD`
- 撤销上上次提交:`git revert HEAD^`
这些命令将创建一个新的提交,将先前提交的更改撤销,并将更改应用于代码库。可以使用 `-n` 选项来阻止自动提交,并在撤销所有所需的提交后手动提交更改。
2.2. 使用 `git reset` 回退提交:
- 回退上一次提交:`git reset HEAD~1`
- 回退上上次提交:`git reset HEAD~2`
注意,`git reset` 命令是危险的操作,它会丢弃提交历史记录,并且如果已经将更改推送到远程仓库,则可能会导致问题。
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" 模式,这将保留提交之后的更改,但将其放置在暂存区中。如果希望彻底丢弃提交之后的所有更改,使用 `--hard` 选项:
```
git reset --hard abc123
```
注意,这将删除提交历史记录,并且如果已经将更改推送到远程仓库,则可能会导致问题。