合理的 版本控制系统 与 web 服务器 的架构方法?

发布于 2022-08-29 22:50:52 字数 117 浏览 12 评论 0

问题:
在同一服务器中搭建了一个 版本控制系统 然后 web服务 的站点目录是直接指向版本控制系统里面的项目位置,还是在自定义的web服务器站点目录,单独clone出版本里面的项目。
为什么要那么做?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

甩你一脸翔 2022-09-05 22:50:52

不建议将web服务的目录指定到版本控制系统中的项目位置下面,主要是出于安全考虑

因为版本控制系统生成的文件中包含很多代码的信息,比如.svn这类文件
http://example.com/stuff/.svn/entries
http://example.com/stuff/.svn/text-base/page.php.svn-base
http://example.com/stuff/.svn/text-base/settings.py.svn-base

这些会泄露很多信息,带来攻击的可能。git也是同理。

冰雪梦之恋 2022-09-05 22:50:52

应该在git服务器上做个钩子,一有commit,就上传最新的代码到web服务器上去。

时光病人 2022-09-05 22:50:52

不推荐代码库和web服务器目录放在一块。

1,.svn等文件夹可以用webserver自带的屏蔽功能禁止外部访问,但是如果代码出问题,有洞那么hacker就会直接从外部修改你的代码库,可以直接修改先前版本的代码,也就是回滚了也没用。
2,千万不要在线上调试。专用的调试服务器可以把代码和目录放在一块,但是线上的产品还是慎重。
3,代码要集中管理。
4.。。。。。。

有种黑科技叫做svn post-commit,svn export,应该可以解决题主的问题。

情绪少女 2022-09-05 22:50:52

不知道对不对得上你的问题。
我一般是用git做版本控制,web站点存在其可用的工作目录(这是有Apache配置决定的),新建项目可以用git初始化这个工程文件夹就行了,就被git跟踪了,而不是将web站点存放在git的项目文件夹中。
至于为什么这个问题,个人认为他们本来就是两个分离的东西,他们都是服务于你的项目的辅助软件,你不可能把项目文件夹放到每个软件的工程目录下。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文