如何在 Git 别名中使用“$@”?

0b0

git log --name-status --pretty=format: | sed '/^$/d' | cut --fields=2- | sort | uniq --count | sort --numeric-sort --reverse | head打印 Git 存储库中编辑次数最多的 10 个文件(基于)。我想most-edited为这个命令创建一个 Git 别名,但有一个警告:该命令应该将任何额外的参数放入git log命令中。这将允许我运行git most-edited 'foo bar/' baz/以获取foo bar(注意空格)和baz目录中编辑最多的文件

在脚本中,这就像添加-- "$@"git log命令中一样简单但是,如果我创建别名,most-edited = !git log --name-status --pretty=format: -- "$@" | sed '/^$/d' | cut --fields=2- | sort | uniq --count | sort --numeric-sort --reverse | head则参数将传递给管道中的最后一个命令head. 有什么方法可以将参数传递给git log

切普纳

在别名中,定义一个函数,然后立即调用该函数。扩展别名时,命令行上的任何附加参数都将成为该函数的参数。

most-edited = '!f () { git log --name-status --pretty=format: -- "$@" | sed '/^$/d' | cut --fields=2- | sort | uniq --count | sort --numeric-sort --reverse | head; }; f'

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章