【发布时间】:2017-12-30 14:35:04
【问题描述】:
这是我的 post-receive 钩子:
#!/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。在cyberciti.biz/faq/… 或cyberciti.biz/faq/bash-for-loop 上查看更多示例
-
是的,它显示了它:D 最后一个问题:我怎样才能把这个路径放入变量中?也许 test=${git diff --name-only oldrev..newrev}?
-
是的,但它是 test=$(),而不是 ${}。请参阅unix.stackexchange.com/a/4570/7490 处的“命令替换”
-
@VonC 我非常喜欢你! :3 没有其他人会帮助我这么长时间并容忍我。 1.000.000 再次感谢,你太棒了!!!我连Linux的基础知识都不懂,真丢人。会尽我所能去研究它,不要问愚蠢的问题。再次感谢!
标签: git hook gitolite git-post-receive