Git:如何从一些提交中获取所有修订的列表?

时间:2010-12-02 22:34:53

标签: git

使用rev-list,我已经弄清楚如何在一个分支上获得所有修订的列表。如何提交所有分支上的所有修订列表?假设我的存储库的顶部如下所示。 如何从bbbbbbb(提交3,4,5和6)获取所有提交的列表?我不关心订单。

* fffffff 6
* ddddddd 4
| * eeeeeee 5
| * ccccccc 3
|/  
* bbbbbbb 2
* aaaaaaa 1

cdhowie的答案几乎就是我所需要的,但它也会返回来自不相关分支的提交。如果我将树展开为此形状,我不希望看到提交7列出。

* 0000000 7
| * fffffff 6
| * ddddddd 4
| | * eeeeeee 5
| | * ccccccc 3
| |/  
| * bbbbbbb 2
|/  
* aaaaaaa 1

2 个答案:

答案 0 :(得分:7)

git rev-list ^bbbbbbb branches...

例如,在此测试存储库中:

chris@zack:~/git-test$ git log --all --graph --oneline
* 8daff2c f      <-- test
* 5f57b15 d
| * 764a725 e    <-- master
| * 5889800 c
|/
* 294908b b
* 975d652 a

chris@zack:~/git-test$ git rev-list ^294908b master test
8daff2c59d8cb966bf399de5027fae85ee016081
5f57b1524afeafbf37984f84fa5fe24ee0ac8501
764a7256d40dbefdb6278443fb80266f00358a37
58898005214607e5c53b45954a98891ea599c037

答案 1 :(得分:0)

您可以使用git rev-listgit log(取决于您要查找的内容),但范围是重要的部分。

在您的情况下,

git log bbbbbbb..fffffff将为您提供从bbbbbbbffffffff但不包括bbbbbbb的所有内容。如果您想要加入bbbbbbb,只需在其前面添加^

您不希望所有更改,因为您希望这些更改导致特定更改。在我的存储库中(我将批次重新定义),存在一个非常大的端点列表,这些端点都会自行消失。