如何在远程开发服务器上使用版本控制?

时间:2011-08-30 23:44:36

标签: git svn version-control mercurial

我是一个由开发人员和设计人员组成的小团队,正在开发Web应用程序,现在我们决定开始使用版本控制。我们有主要的开发服务器,其中存储了所有项目,我们通过ftp处理它们(但我们有ssh访问权限)。

问题是,在有人推送了一个提交后,在服务器上更新文件的最佳方法是什么,所以所有的更改都可以立即在浏览器中看到? 据我所知,git存储库应该是'裸'才能接收推送,因为它是'裸' - 它没有工作文件。这是否意味着git对此没有用处或有办法?

在Mercurial中,必须在本地应用提交,才能更改文件。它应该通过某种钩子来完成吗?

我实际上并不知道svn在这种情况下是如何表现的,从未使用它。

该解决方案应该易于使用并与GUI客户端兼容。

2 个答案:

答案 0 :(得分:2)

查找“钩子”,这是您的版本控制软件在发生某些特定事件时调用的脚本,例如在存储库中提取变更集时。该功能在SVN,GIT,Mercurial,Bazaar ......中可用。

我目前在拥有WIP网站的中央mercurial存储库上有一个钩子:当团队中的某个人在那里推送他的更改时,该网站的测试版本会被钩子脚本自动更新。然后,当我们对某个版本感到满意时,我们会使用另一个脚本将此版本移至测试版网站,以便某些用户可以查看。

答案 1 :(得分:0)

无需工作树即可访问您的仓库。请参阅GitWeb上的文档。