Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git日志:是否排除仅修改特定子文件夹的提交?_Git_Gettext_Git Log - Fatal编程技术网

git日志:是否排除仅修改特定子文件夹的提交?

git日志:是否排除仅修改特定子文件夹的提交?,git,gettext,git-log,Git,Gettext,Git Log,在为项目的新版本编写发行说明时,有时区分哪些贡献者是开发人员,哪些只是翻译人员是很有趣的 为此,在基于gettext的项目中,可以简单地使用git log,但只考虑项目中未命名为po的所有子文件夹 我已经看到,git log接受路径参数,但是如何实现相反的效果呢?是否提供一条要丢弃的路径,而不是将其考虑在内?谢谢您可以排除名为po的文件夹,并显示其他文件夹的所有协作者,如下所示 git log -- . '!po/*' --no-merges "$@" | grep ^Author: | sed

在为项目的新版本编写发行说明时,有时区分哪些贡献者是开发人员,哪些只是翻译人员是很有趣的

为此,在基于gettext的项目中,可以简单地使用
git log
,但只考虑项目中未命名为
po
的所有子文件夹


我已经看到,
git log
接受路径参数,但是如何实现相反的效果呢?是否提供一条要丢弃的路径,而不是将其考虑在内?谢谢

您可以排除名为
po
的文件夹,并显示其他文件夹的所有协作者,如下所示

git log -- . '!po/*' --no-merges "$@" | grep ^Author: | sed 's/ <.*//; s/^Author: //' | sort | uniq -c | sort -nr

git日志--!po/*'--没有合并“$@”| grep^作者:| sed's/这会产生以下错误:
bash:!po/*:未找到事件
命令应以git log--.'开头!po/*'
我将双引号改为单引号,并更新了我的答案OK,现在它没有给出错误,但结果不正确。例如,我在banshee repo()中运行了这个,它显示了Antón Méixome author,它只提供了一个翻译:@knocte有趣。我克隆了存储库,并在master branch上运行了相同的命令。你可以检查我在列表中看不到Antón Méixome的结果。你的结果也是错误的:我只列出了49份贡献,但我已经提交了400多份(我姓Aragoneses)