我正在尝试编写一个pre-receive hookfor git,它将提取最新版本的代码并对其运行单元测试。我的代码在下面,但是当它到达“git checkout $newrev”时,我得到:
远程:致命:引用不是树:188de39ca68e238bcd7ee9842a79397f39a5849e
在接收发生之前,我需要做什么来检查正在推送的代码?
#!/bin/bash
while read oldrev newrev refname
do
echo "Preparing to run unit tests for $newrev"
TEST_DIR=/opt/git/sommersault-push-tests/sommersault
# check out this version of the code
unset GIT_DIR
echo $refname
cd $TEST_DIR
git checkout $newrev
...do more stuff...
done
Run Code Online (Sandbox Code Playgroud)