执行git的命令
问题描述:
我写gitosis
的*资料库执行git的命令
这是直接从*存储库更新到测试环境
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 [email protected]:holding.git
233b5a2..0f46cd8 testing -> testing
显然,我试图告诉git,它应该在哪里拉,失败。
在bash脚本中为指定的工作副本运行git命令的正确方法是什么?
答
是/var/vh/holding
git存储库?即你运行了git init
,设置你的遥控器,设置它来跟踪你的hold.git目录等。此外,如果您不是从您推动的同一回购协议中获得回报,那么您不应该需要reset
和checkout
。
这可能,甚至可能记录(需要检查手册页)GIT_DIR设置为'。'。同时处理你的钩子功能.... – sehe 2011-05-25 10:35:31