2010-09-13 38 views
4

我即将冒险尝试使用其他人使用的实际项目的Git!使用Git将多个项目部署到服务器的最佳方式是什么?

到目前为止,我已经使用Git的一些基本项目,并与Github上发挥各地的一些大学的项目,但现在我和其他一些人将工作在多个项目。因此,我们将在远程服务器上托管Git,说实话,如果我们能够开始使用Git满足我们需求的久经考验的方法,那就太好了。

起初我们以为举办的Git主服务器,一拉就...

网站: /家庭/虚拟主机/域/ htdocs目录

混帐: /家/git/domain.git

这听起来像它会工作,但我担心的主要网站是从的情况下运行的服务器上托管的存储库它的股价下跌,或者如果我们丢失数据,因为我们将留下本地副本。我希望所有这些都在开发服务器上运行,但有些人认为这太过头了,有些东西可能会成为噩梦。

为了公平起见,我们最近的所有毕业生和具有与爱好的项目源控制和单靠最后一年的CS项目,只有基本的经验,当时是颠覆流行的选择。我们选择Git的原因之一是通过其他开发人员的口头表达以及在工作中广泛使用它的朋友的推荐。

为了澄清,我们将在多个托管项目上工作,并希望使用Git进行部署。我们所面对的是处理这一问题的最佳方式。我们将有三个人在同一台机器上同时运行一台活动服务器和(希望)一台开发服务器来测试内容。

对于那些谁是主要处理的Web应用程序,你如何使用Git的部署你的工作代码的服务器?我们是否为了我们的需要而吠叫错误的树木?任何你可以给Git新手的提示?

+0

我不知道你为什么从[Programmers.SE](http://programmers.stackexchange.com)中删除了这个:这是一个合适的地方。 – 2010-09-13 21:47:49

+0

我删除了它,因为我收到的唯一评论是它应该移到这里,投了两次。 – 2010-09-13 22:24:55

回答

2

我实际上写了一个blog post关于我用来从本地计算机部署我的网站到登台服务器,然后在现场的程序,因为它有点复杂。如果要使用双层分发体系结构(分段服务器和活动服务器),写入可能对您有用。如果您不想使用登台服务器,则可以将本地计算机配置为直接推送到实时站点,这样做更简单。当然,该设置仍然允许您在本地计算机上进行测试。

除此之外,我会回应Mark Trapp对git的分散性质所说的话。将中央存储库放在Web服务器上没有任何问题,因为您的本地副本包含您需要继续工作的所有内容,并在必要时重建另一个中央存储库。

4

你需要明白的是,所有的Git仓库本质上都是“本地”的。

当您使用git clone克隆存储库时,您将获取整个整个存储库及其所有更改和日志。如果您丢失了远程存储库,那么您的本地克隆就可以在远程位置停止的地方继续。另外,您可以将多个远程存储库连接到本地存储库:例如,当我在一个站点上工作时,我将拥有自己的本地存储库以及开发服务器上的远程存储库和生产服务器。然后,这只是一个取决于上下文而拉到正确的问题。

而这些远程仓库没有什么特别的:它们只是在我的电脑上包含相同内容的目录。

因此,您唯一需要担心的是确保您的团队中的每个人都可以访问远程存储库:如果您没有其他地方可以放置它,那么您拥有该站点的服务器就可以。

0

我们使用的gitosis与多个用户管理多个存储库: http://fclose.com/b/1432/setting-up-git-server-using-gitosis/

之前我们使用git通过SSH连接。这将使每个人都是管理员。所以我们转向gitosis。我们可以控制谁可以写入一个存储库以及谁可以读取一个存储库。我们可以有几个管理员。我们也可以设置电子邮件通知方案。我们现在对此感到满意。

相关问题