0

我一直在研究一个想法,并且需要通过某人来运行它,看看我是否已经走到了尽头。

我正在开发一个相当复杂的 PHP 项目,我是唯一的开发人员。我们正在寻找其他人来帮助进行编程工作,但不希望他们在第一天就看到所有内容。“核心架构”和“非核心”之间有一条非常清晰的界线。我希望新人能够阅读和修改“非核心”部分。非核心部分需要核心部分才能工作。

我的计划是这样的:

  1. 使核心和非核心部分分开 git 存储库
  2. 使核心部分成为非核心的子模块
  3. 向核心存储库添加一个提交后挂钩,以运行代码混淆

然后当子模块更新时,文件将执行,但将非常难以阅读。

#1 和 #2 很简单。但是#3...我不知道它是否可以完成。我正在研究 git 内部结构,以查看文件的实际存储方式,但似乎它们只是存储在文件系统中。因此,没有任何方法可以编辑它们并添加混淆而不完全破坏“好”副本。话虽如此,我总是可以在那里菊花链另一个回购。

良好的回购 -> 核心回购(带有混淆) -> 非核心

我只是想知道是否有更清洁的方法来做到这一点。


只是另一个想法,但我无法使用混淆代码的存储库。而是让 git commit 钩子调用脚本来复制和混淆核心代码并将其放置在非核心存储库中。添加 .getignore 以便该文件夹不属于非核心代码库。

4

1 回答 1

1

将您的核心功能公开为 Web 服务并通过 HTTP 访问它们。将非核心位保留在存储库中。

于 2013-01-08T23:59:29.450 回答