2013-02-14 148 views
1

我想在我的服务器上创建一个git repo以在推送后更新我的网站。所有教程(如此:http://developertheory.com/how-to-auto-deploy-apps-after-git-push/)的第一步骤中,我发现,这是命令:是--bare选项是否等于Git中的core.bare配置?

git init --bare 

在接下来的步骤我应该输入以下命令:

git config core.worktree /path/to/git/deploy 
git config core.bare false 
git config receive.denycurrentbranch ignore 

第二命令(git config core.bare false )将回购设置为非裸露。为什么我们首先将库存初始化,然后将其设置为非裸露?

+0

你能准确地描述你正在尝试做什么? “推送后更新我的网站”是什么意思? – sinelaw 2013-02-14 14:36:52

+0

我的意思是我想在我的本地系统中输入'git push'后自动结账。请参阅我刚刚添加的帖子 – user16948 2013-02-14 14:42:03

回答

1

我怀疑这个教程使用git init --bare“干净”的方式来创建一个空的回购协议,不能与实际文件的混合:

这种回购包含直接.git平常内容,即使是再后配置为非裸露。
您需要一个非裸回购为git checkout(在挂钩)工作,因为您只能检出一个非裸露的回购(根据定义,没有工作树裸露的分支)。

我不会建议部署该方法虽然,我更喜欢:

  • 保管,为了回购裸推到它
  • 建立回购,非裸
  • 在第一个(裸露)回购库中添加一个后接收挂钩,以便第二个回收站从第一个回收站获取。

见例如:

相关问题