我一直在研究一个想法,并且需要通过某个人来运行它,看看我是否已经走下了深渊。Git和混淆代码
我正在做一个体面复杂的PHP项目,我是唯一的开发人员。我们正在寻找其他人来帮助编程,但不希望他们在第一天看到所有内容。在“核心架构”和“非核心”之间有一条非常清晰的界限。我希望新人能够阅读和修改“非核心”部分。核心部分是非核心工作所必需的。
我的计划ID这样的:
- 使核心和非核心部分分开Git仓库
- 使核心部分的非核心
- 一个子模块添加一个post-commit钩子来核心存储库,运行代码混淆
然后,当子模块更新时,文件将执行,但将很难阅读。
#1和#2很容易。但#3 ......我不知道它是否可以完成。我正在研究git的内部,看看这些文件是如何存储的,但是好像它们只是存储在文件系统中。因此,没有任何方法可以编辑它们并添加混淆而不会完全摧毁“良好”副本。话虽如此,我总是可以在那里菊花链另一个回购。
良好关系 - >核心回购(有混淆) - >非核心
我只是想知道是否有这样做一个更清洁的方式。
只是另一个想法,但我不能使用混淆代码的存储库。而是让git commit hook调用一个脚本来复制和混淆Core代码,并将其放置在非核心代码库中。添加一个.getignore,以便该文件夹不是非核心代码库的一部分。
可能完全不在话题中,但可以将核心功能作为一组服务/ API公开。 – cmbuckley
是的,感谢这个想法,但是那里有很多代码,而我没有时间去做那样的重写。我仍在努力将其全部切换到OOP! – Beachhouse
如果确实有一条“非常清晰的线条”,那么不应该太难做。 – hd1