我一直在研究一個想法,並且需要通過某個人來運行它,看看我是否已經走下了深淵。Git和混淆代碼
我正在做一個體面複雜的PHP項目,我是唯一的開發人員。我們正在尋找其他人來幫助編程,但不希望他們在第一天看到所有內容。在「核心架構」和「非核心」之間有一條非常清晰的界限。我希望新人能夠閱讀和修改「非核心」部分。核心部分是非核心工作所必需的。
我的計劃ID這樣的:
- 使核心和非核心部分分開Git倉庫
- 使核心部分的非核心
- 一個子模塊添加一個post-commit鉤子來核心存儲庫,運行代碼混淆
然後,當子模塊更新時,文件將執行,但將很難閱讀。
#1和#2很容易。但#3 ......我不知道它是否可以完成。我正在研究git的內部,看看這些文件是如何存儲的,但是好像它們只是存儲在文件系統中。因此,沒有任何方法可以編輯它們並添加混淆而不會完全摧毀「良好」副本。話雖如此,我總是可以在那裏菊花鏈另一個回購。
良好關係 - >核心回購(有混淆) - >非核心
我只是想知道是否有這樣做一個更清潔的方式。
只是另一個想法,但我不能使用混淆代碼的存儲庫。而是讓git commit hook調用一個腳本來複制和混淆Core代碼,並將其放置在非核心代碼庫中。添加一個.getignore,以便該文件夾不是非核心代碼庫的一部分。
可能完全不在話題中,但可以將核心功能作爲一組服務/ API公開。 – cmbuckley
是的,感謝這個想法,但是那裏有很多代碼,而我沒有時間去做那樣的重寫。我仍在努力將其全部切換到OOP! – Beachhouse
如果確實有一條「非常清晰的線條」,那麼不應該太難做。 – hd1