这些是我们目前的分支机构:
现在feature
是从分期中诞生的,并且在整个过程中有许多提交,其中有一些来自分段和掌握。
但是当feature
从分期出生时。 staging有几个提交,后来被删除了......
即:
staging: a->b->c->d->e
feature: a->b->c->d->e->f->h->i->j...
但过了一段时间,有人从暂存历史中删除了提交 所以现在这是状态
staging: c->d->e
feature: a->b->c->d->e->f->h->i->j...
但更糟糕的是,有更多提交暂存,后来被合并到功能
staging: c->d->e->s1->s2->s3
feature: a->b->c->d->e->f->h->i->j->s1->s2->s3->f1->f2
如何在feature
到staging
的提交中获取差异?
因为我跑
git show-branch feature staging
我什么都没得到,因为staging被合并到了功能
答案 0 :(得分:0)
如果您在功能分支中,则可以执行
git diff feature staging
这将显示从功能到分段的所有区别。您也可以对主分支执行此操作。
但是,如果您希望以更直观的方式查看差异,我建议使用SourceTree或IntelliJ IDE应用程序来获得与终端相比更好的视觉效果。
如果您想查看以前提交的列表,也可以在功能分支中执行git log
。
答案 1 :(得分:0)
git log staging..feature
git log staging...feature
请参阅https://www.kernel.org/pub/software/scm/git/docs/gitrevisions.html上的文档,了解..
和...
语法的说明。
https://git-scm.com/docs/gitrevisions#gitrevisions-Theememtwo-dotRangeNotation