具有特定文件和文件夹限制的源代码管理

时间:2011-04-24 05:45:10

标签: php svn version-control

我目前正在使用SSH + SVN进行主要使用PHP开发的Web项目。还有另一个开发人员和我一起工作,我们都从回购中检查到我们自己的沙箱,可以从网上查看。

我想引入新的实施者并将它们限制在项目代码的某些部分。我如何实现这一点并仍允许他们使用沙箱来预览网站中的更改?

例如,我有一段名为proprietary_algo.php的代码,需要仅限于特权开发人员(读,写,执行)。所有其他新实现者仍然可以通过他们的沙箱查看该站点,这需要执行proprietary_algo.php,但他们无法复制代码或读取其中的代码。

如果我能做到这一点,我愿意离开SVN或建立一个全新的流程。

补充说明:不,NDAs和信任不会削减它。对于我们的业务需求和情况,需要限制特定的源文件。

更多信息: 我设置了一个虚拟主机和DNS,指向他们的沙盒目录(例如:devuser1.mydomain.com),以便他们可以进行测试。他们直接从trunk将代码签入沙箱,并在通过SSH远程连接的IDE上编辑代码。如上所述,repo中的一些代码应该是不受限制的,但是当他们在沙箱中编辑和测试时仍然需要运行该站点。所有开发人员共享相同的MySQL数据库实例。

2 个答案:

答案 0 :(得分:0)

如果您使用svn + httpd,则可以这样做。

答案 1 :(得分:0)

寻址“需要执行proprietary_algo.php,但是他们无法复制代码或读取代码内部的代码。”如果NDAs不会削减它,那么你将陷入痛苦的世界。

即使您使用SVN访问控制进行了设置,您也无法阻止其PHP脚本将秘密脚本复制到HTTP输出。

实际上,你可以阻止它,但他们必须要么:

  1. 通过http请求(例如curl)调用秘密脚本。您需要在受信任和不受信任的代码之间实现XML / JSON / name-your-HTTP-RPC方法接口。
  2. 允许执行不受信任的代码 CGI模式脚本。