Git短日志在Jenkins shell中没有显示输出

7

在使用Jenkins时遇到了一些奇怪的问题,

#!/bin/sh

set -x

#initialize environment
export PATH="$HOME/.gem/ruby/2.0.0/bin:$PATH"
export PATH="$HOME/.fastlane/bin:$PATH"
export LC_CTYPE=en_US.UTF-8

cd ~/autobuild/projects/MyAPP
git checkout dev
git reset head --hard
git pull

git shortlog

git log

当我从Jenkins任务运行以上脚本时,它可以成功显示git日志输出,但是没有git shortlog的任何内容。问题出在哪里?MyApp有数百次提交。
1个回答

16

最终我能够找到原因了,git shortlog在直接从终端使用时能够正常工作,因为

git help shortlog

展示,

如果在命令行上没有传递修订版本,并且标准输入不是终端,或者当前没有分支,则git shortlog将输出从标准输入读取的日志摘要,而不引用当前仓库。

因此,在处理shell脚本时,必须显式提供参考。

git shortlog HEAD

在那种情况下会很好用。


1
谢谢。Git 又一次让人惊叹 :-) - Iain Samuel McLean Elder

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接