git查找操作

查找所有分支关系

git log --decorate --graph  --oneline  --simplify-by-decoration --all

--simplify-by-decoration表示只显示分支HEAD(最新状态)。

 

查看两个分支之间的关系

git log --decorate --graph  --oneline  --simplify-by-decoration <branch1> <branch2>

 

查看两个分支最近一次的公共commit

这个commit在两个分支上都有,但是位置离两个分支最近。

git merge-base <branch1> <git branch2>

例如: git merge-base master dev*  会输出c1的commit

git查找操作

查询某个分支是否包含某个commit

  1. 看git merge-base <commit-id> <branch>返回的是不是<commit-id>
  2. 看命令git branch --contains <commit-id>的返回结果中有没有分支名。对于远程分支,需要加上-r参数。
  3. git rev-list <branch>,看结果里有没有<commit-id>

有两个分支 b1 b2 ,b2是基于b1拉出来的,查看 b2拉出来后,b2上的所有提交

可以用git log b1..b2,但是要求b2拉出来以后没有和b1合并过