git在commit后撤销commit并且重新commit

在 Git 中,如果你想要撤销一个已经完成的 `commit` 并且重新进行 `commit`,你可以使用以下方法:

1. **使用 `--amend` 选项重新编辑最后一次提交**:


   如果你想要修改最后一次提交(例如,添加遗漏的文件或修正提交信息),你可以使用 `--amend` 选项。这将打开一个编辑器让你重新编辑提交信息,并且你可以在这个阶段使用 `git add` 命令来添加之前遗漏的文件。


   ```
   git commit --amend

   ```

   完成编辑后,保存并关闭编辑器,提交将会被更新。

2. **使用 `reset` 撤销最后一次提交**:
   如果你想要撤销最后一次提交,并且重新暂存文件和编写提交信息,你可以使用 `git reset` 命令。使用 `HEAD` 表示撤销最后一次提交:

   ```
   git reset --soft HEAD~1
   ```

   这个命令不会改变你的工作目录中的文件,但是它会撤销最后一次提交,将暂存区的文件保留在暂存区。

3. **重新暂存和提交**:
   使用 `git add` 命令将需要的文件重新添加到暂存区,然后使用 `git commit` 重新提交:

   ```
   git add .
   git commit -m "New commit message"
   ```

4. **如果需要,推送更改到远程仓库**:
   如果你的更改需要更新远程仓库,使用 `git push` 命令:

   ```
   git push origin <branch-name>
   ```

请注意,使用 `git reset --soft` 会保留你的更改,但是会撤销提交。如果你使用 `git reset --hard HEAD~1`,这将撤销最后一次提交,并且丢弃所有的更改。使用 `--hard` 选项时要非常小心,因为它会丢失所有未提交的更改。

如果你使用 `git commit --amend` 来修改最近的提交,并且这个提交已经被推送到了远程仓库,你需要使用 `--force` 或 `--force-with-lease` 选项来推送更新后的提交:

```
git push origin <branch-name> --force
```

使用 `--force` 选项会覆盖远程仓库的历史,这可能会影响其他协作者的工作,请谨慎使用。 

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值