gpt4 book ai didi

Git:想要遍历分支上的所有提交,并在每个提交中列出文件

转载 作者:IT王子 更新时间:2023-10-29 00:50:27 25 4
gpt4 key购买 nike

我需要写一个脚本来

  1. 遍历分支上的所有提交,从最近的开始
  2. 对于每次提交,遍历提交中的所有文件
  3. 如果找到 hbm.xml 类型的文件,将提交存储到文件并退出。

我有第 2 步的脚本:

for i in `git show --pretty="format:" --name-only SHA1 | grep '.*\.hbm\.xml' `; do
# call script here.....
exit
done

现在,我需要弄清楚第 1 步。

最佳答案

类似于:

for commit in $(git rev-list $branch)
do
if git ls-tree --name-only -r $commit | grep -q '\.hbm\.xml$'; then
echo $commit
exit 0
fi
done

请注意,git show 只会列出在该提交中发生更改的文件,如果您想知道在提交中是否存在与特定模式匹配的路径,您需要使用类似 git ls-tree.

关于Git:想要遍历分支上的所有提交,并在每个提交中列出文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5953767/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com