git rebase
git rebase -i HEAD~3
可以调整几次提交(commit)的顺序,或者去除不想要的提交
git pull
git pull --rebase
可以拉取远程合并的时候提交记录为一条线
git commit --amend
git commit --amend 修改最近一次提交的信息
修改注释和最后一次提交的修改都可以,但是最后一次修改的SHA-1 校验和会更改,类似一次小变基。
建议不要在已经push到origin时候使用
git tag
git tag 标签名 提交版本号 (给版本号加标签)
git describe 显示现在分支的tag 以及相隔的距离
git merge --squash 分支名
通常在自己的重新checkout的分支开发,最后切换master后merge自己开发的分支
自己提交commit太多,到主分支不好找history ,可以merge时使用 squash ,结果是master显示还有未提交的修改
其实是把开发分支的所有commit 一次合并到master,自己在提交一次只需要添加一次commit信息,master就不会有很多commit的信息了
git bisect
HEAD^是选择分支的方向,默认为1,而HEAD~ 中的~ 是指在此方向上走几步
HEAD^0 HEAD~0 都是现在指向的点
HEAD^1 HEAD~1 父节点