这里是我的后收到钩:我该如何让Gitolite post-receive hook显示修改文件的完整路径?
#!/bin/bash
while read oldrev newrev ref; do
git diff --name-only oldrev..newrev
git --work-tree=/tmp checkout HEAD -- plugin.yml
echo -e "Test complete maybe..." | tee >(exec logger)
done
这里是输出:
如果我更换oldrev..newrev通过OLDREV - NEWREV,输出为:
我需要获取该文件(plugin.yml)被修改的文件夹。谢谢。
是的,这应该是循环内的$ oldrev和$ newrev。在https://www.cyberciti.biz/faq/unix-linux-iterate-over-a-variable-range-of-numbers-in-bash/或https://www.cyberciti.biz/faq查看更多示例/ bash-for-loop/ – VonC
是的,它显示了:D和最后一个问题:我怎样才能把这个路径放入变量?也许测试= $ {git diff --name-only oldrev..newrev}? –
是的,除了它是test = $(),而不是$ {}。请参阅https://unix.stackexchange.com/a/4570/7490“命令替换” – VonC