最初,我认为我的问题是How to maintain branches in Apache's DocumentRoots?
,但实际上正确的问题是How to use Git to deploy stuff to web -server such as Apache?
。
我觉得我现在已经理解了DocumentRoot -problem,它需要我想要避免的Apache黑客攻击,因为使用副作用并将repo放在部署之外的更简单的解决方案-dir但是现在有一个问题需要理解git-fetch -hook以及如果外部事物是一个大型目录,如何部署东西,或许只是cp除了然后mv - 但必须有一些更好的方法同步部署-dir,思考。
DocumentRoot -problem
DocumentRoots在httpd.conf中为hostable材料指定dirs。 现在在这样的文件夹中,我想要ticgit -branches和feature -branches。 当我在一些DocumentRoot中创建分支时,我得到了主人和 其他分支混淆了。
$ git checkout --orphan feature-0.01
不是 空但包含主人。$ ti new ...
创建了一个分支 有来自大师的东西,显然是Ticgit中的一些错误(它有效 在小回购,但创建ticgit -branch为更大的回购像我 DocumentRoot导致严重破坏)。那么如何在Apache的DocumentRoot中维护你的分支?你有票吗? 你的功能怎么样 - 分支?看起来我很困惑,$ git checkout feature-0.1
现在apache如何知道它是哪个文件 应该主持?feature-0.1
中的主事或事物?我对DocumentRoot -problem的更新理解
现在后者的问题是部署并不意味着 像这样工作。我知道SethRobertson的指南指示了一些方法 使用git进行部署。我认为它们是目前为止最好的方法 而不是在部署中使用git -repo攻击Apache -dir(通常是www)。
答案 0 :(得分:2)
错误!
不要在部署内部开发-dir(通常是Apache中的www)。在其他地方开发并使用SethRobertson指南here中概述的副作用和正确的版本控制良好规则,特别是有关版本1.0和标记的部署分支的规则,以便您保持事情随时间发展的时间表。他说下面的活动可能会导致开发和部署混乱,对用户来说可能也不是好事(他们可能不希望在浏览时看到您对网站的编辑)。
SethRobertson的指南指出DO-NOT不会搞乱部署和开发
使用git作为Web部署工具
是的,它可以在足够简单/非关键的环境中完成 与Abhijit Menon-Sen关于使用git的文档类似 管理网站以提供帮助,尽管还有其他例子。然而, 这不会给你原子更新,同步数据库更新,或 工业部署系统的其他配件。
所以Using Git to manage a web site
- 教程here,示例here和here - 但请注意他的警告"however, this does not give you atomic updates, synchronized db--"
。