我们终于开始将GitHub用于我们的Web开发工作流程。我知道,欢迎来到19世纪,对吗?
我们正在尝试设置现有的项目,但是我遇到了一些我不知道如何处理的文件夹结构问题。
在我们的本地开发机器上,我们创建了一个名为website-A.com的文件夹。在该文件夹中是制作网站的所有文件 - 它是根目录。
在我们的生产服务器上,根位于/var/blah/sites/website-A.com/html /
在GitHub上,我们的存储库名为website-A.com
我在/var/blah/sites/website-A.com/html/上运行了git init
,这是我们生产服务器上的根文件夹。
当在服务器上的/ html(root)文件夹中执行git clone git@github.com:myaccount/website-A.com.git
时,git会在根目录中放置一个“website-A.com”文件夹。
我的问题是,如何在生产服务器上使用我的主分支与GitHub同步而不使用我的git命令在生产服务器上的/ html文件夹中创建一个名为“website-A.com”的新目录?
我们是否需要更改本地计算机上的文件夹结构?有没有一种简单的方法可以在GitHub上创建这个html文件夹,还是我们需要重做一切?
答案 0 :(得分:0)
这是一个概念问题,而不是Git问题。
你在这里重复两件事 - 源控制和你的部署方案。
您的源代码管理布局应该是部署方案的独立;您可以在部署时将文件放置到不同的位置,或者在开发过程中突然出现的文件通常不会出现在部署中(想想动态填充的图像,生成的PDF等)。
项目布局应符合您习惯的工作方式。这种风格根本不重要,应该在开发人员机器上完成,不是主服务器。那个特定的布局是你想要推送给GitHub的。是的,此特定布局必须对所有开发人员都是同质的,否则会发生冲突(和/或痛苦)。
当需要部署到主服务器时,您可能希望从远程服务器上游获取更改,然后制定出最适合您需求的打包和部署方案。如果它基于JavaScript + HTML,那么构建系统(如Gulp)可以帮助您克服构建必要工件的障碍,并可能将它们移动到您需要部署它们的位置。