cross-posted from: https://discuss.online/post/45517222
Over the last year I’ve been customizing my applications like Castopod and Dokuwiki, in order to make them easier to navigate by my users. I’m trying to build a sustainable setup where upgrades don’t break things I’ve manually customized in a text editor and I don’t waste hours reapplying changes. I’d rather invest time in doing it right this time.
This is my first time managing a self-hosted wiki long-term, so I want to establish good practices early… before I start telling everyone to join up. I also intend to share my findings with the larger Dokuwiki and Castopod projects, because I can see where I could submit some pull requests eventually.
Thanks for any advice!


PHP is written in text files which can be managed using any number of version control systems. Pick your poison.
https://en.wikipedia.org/wiki/List_of_version-control_software
As someone else said, you can document your patches with a Docker file, but you’ll still need to track your changes.
Ultimately, what you’re essentially doing is maintaining a local fork of the code and keeping it synchronised with upstream.
For dokuwiki, I’ve found I can safely edit many menus by copying them from /inc to /conf. So far, so good. I’m tracking the edits from within dokuwiki itself, so far.