windows Git rev-list是否可以只使用GIT命令而不使用bash命令以相反的顺序输出?

k10s72fa  于 2023-01-14  发布在  Windows
关注(0)|答案(2)|浏览(156)

尝试从所选提交仅获得一个结果返回相同的输出,而不管输出顺序如何。

列表总长度为130个提交
结果相同,但列表不同

显示结果减少:

$ git rev-list  --reverse origin/a..origin/b -10
c4fe26e8ebc8a2ceb0129a6f7318b08d18126baa
fd302babdae3338a2d780b529ec8499867d1c330
d24b219372ff87ada2c196857f47f7a9c61f1fad
1eaf20b79e69ae4d729a2679bdc40f6b2d22958f
6a76950fd9eee705ed813aec0c44ac58ff3a030c
058e793dbcd507861880b21aacf2dd07d2b079ff
f8bb9225c4101bf1340e35abd609e526d2bde2c1
a01e72042582337ff74f64caa0e5a25ceeba6c8d
bc88772e4cb3be926639da6d71a57aaef507cbf0
315f11516b98454cb8732ac57b9cc53dff9460b5

$ git rev-list  origin/a..origin/b -10
315f11516b98454cb8732ac57b9cc53dff9460b5
bc88772e4cb3be926639da6d71a57aaef507cbf0
a01e72042582337ff74f64caa0e5a25ceeba6c8d
f8bb9225c4101bf1340e35abd609e526d2bde2c1
058e793dbcd507861880b21aacf2dd07d2b079ff
6a76950fd9eee705ed813aec0c44ac58ff3a030c
1eaf20b79e69ae4d729a2679bdc40f6b2d22958f
d24b219372ff87ada2c196857f47f7a9c61f1fad
fd302babdae3338a2d780b529ec8499867d1c330
c4fe26e8ebc8a2ceb0129a6f7318b08d18126baa

$ git rev-list --max-count=1  origin/a..origin/b
315f11516b98454cb8732ac57b9cc53dff9460b5

$ git rev-list --reverse --max-count=1 origin/a..origin/b
315f11516b98454cb8732ac57b9cc53dff9460b5

列出从给定的提交通过父链接可到达的提交,但不包括从前面有^的提交可到达的提交。默认情况下,输出按时间倒序排列。
我使用的命令

git rev-list --max-count=1 $TARGET_BRANCH..$BASE_BRANCH

来自文件
请注意,这些选项在提交顺序和格式选项(如--reverse)之前应用。

  • -n --max-count=限制要输出的提交数。
    使用以下git版本

git版本2.39.0.windows.1

fdbelqdn

fdbelqdn1#

引用的文档部分解释了

git rev-list --max-count=1 --reverse $TARGET_BRANCH..$BASE_BRANCH

是:
1.以常规方式收集$TARGET_BRANCH..$BASE_BRANCH范围内的提交。
1.在第一个条目(--max-count=1)之后截断收集列表。
1.以相反顺序列出剩余的提交(--reverse)。
当然,如果列表只有一个条目,则无论是正向打印还是反向打印,打印结果看起来都是一样的。

b1uwtaje

b1uwtaje2#

正如您链接的文档所述,git rev-list--max-count应用得非常早,* 早于 * --reverse
要获得您所要求的效果,请使用现有工具。git rev-list origin/a..origin/b | tail -1获取最后一个条目。

相关问题