我正在为中央代码库编写 gitosis
的提交后钩子。
它会将更新内容从中央代码库拉取到测试环境中。
nano /var/git/repositories/holding.git/hooks/post-update
#!/bin/bash
cd /var/vh/holding;
git reset --hard;
git checkout testing;
git pull;
这是我在客户端(开发虚拟机)上进行推送后得到的结果
# blah ...
Counting objects: 57, done.
Compressing objects: 100% (24/24), done.
Writing objects: 100% (30/30), 3.42 KiB, done.
Total 30 (delta 18), reused 0 (delta 0)
fatal: Not a git repository: '.'
fatal: Not a git repository: '.'
fatal: Not a git repository: '.'
fatal: Not a git repository: '.'
To git@cheby.ru:holding.git
233b5a2..0f46cd8 testing -> testing
显然,我告诉git应该在哪里进行pull的尝试失败了。
在bash脚本中为指定的工作副本运行git命令的正确方法是什么?