GDB常用调试命令(四)

本篇介绍如何删除已经提交的commit内容。

举例:删除df05b27 Update Haier ID

root@ubuntu:/home/run/code/adb# git log --oneline
2096ff9 (HEAD -> master, origin/master, origin/HEAD) add prebuilt deb package for i386
1ceec66 modify gen_udev_rules.sh ## 后一条commit
df05b27 Update Haier ID    ## 要删除的commit 
4941ea4 Add Haier ID       ## 前一条commit
547bb15 mod README.md
3aa44fb mod README.md
3a0e138 mod README.md
e341c7f mod README.md and autogen.sh

方法:

## 1、找到要删除的commit id(df05b27)的下一个commit id(4941ea4),使用git rebase命令
git rebase -i 4941ea4

## 2、修改要删除的commit id(df05b27)前的pick为drop,保存退出
drop df05b27 Update Haier ID    ## 将pick改为drop
pick 1ceec66 modify gen_udev_rules.sh
pick 2096ff9 add prebuilt deb package for i386

## 3、删除后,查看提交记录
root@ubuntu:/home/run/code/adb# git log --oneline
0943f01 (HEAD -> master) add prebuilt deb package for i386
ea6df01 modify gen_udev_rules.sh ## 后一条commit
4941ea4 Add Haier ID   ## 前一条commit
547bb15 mod README.md
3aa44fb mod README.md
3a0e138 mod README.md
e341c7f mod README.md and autogen.sh
1eb2b50 add autogen.sh
e2870da add support for mac os x/darwin

## 4、提交,强制覆盖已有的分支
git push -f 远程仓名 本地分支名

注:

提交时,如果不添加-f,会提示:hint: Updates were rejected because the tip of your current branch is behind

{{o.name}}
{{m.name}}

猜你喜欢

转载自my.oschina.net/u/4702401/blog/5309516