Git进阶操作
rebase
可以用来合并分支&合并多个commit
基本使用
git rebase hashId
参数
- -i, --interactive 让用户编辑提交到rebase的列表
碰到冲突后
# 解决完冲突
git add .
git rebase --continue
# 放弃
git rebase --abort
cherry-pick
把当前分支的commit提交,添加到另一个分支上,可以同时同步多个 commit
基本使用
git cherry-pick hashId,hashId
参数
- -e , --edit 打开外部编辑器,编辑提交信息。
- -n , --no-commit 只更新工作区和暂存区,不产生新的提交。
碰到冲突后
# 解决完冲突
git add .
git cherry-pick --continue
# 放弃
git cherry-pick --abort
reset
回退到指定版本
基本使用
git reset --hard hashId
参数
- --hard 工作区和暂存区的全都删掉,然后回退
- --soft 工作区和暂存区的不变,放到暂存区 直接可以 commit ,然后回退
- --mixed 工作区和暂存区不变,需要 git add . ,然后回退
revert
撤销一次的commit提交,重新进行一次新的提交,但是提交的内容是会退某一次提交
基本使用
git revert hashId
参数
- -e , --edit 打开外部编辑器,编辑提交信息。