Tiki use SVN for revision control. There has been some discussion in the community about migrating to a Distributed Version Control System (DVCS) but it is unlikely that anything will change in the near future.
I’m writing this post to briefly share my experience using git-svn locally for Tiki development. This tool allow you to synchronize a Git repository with a SVN repository. Follow the steps below to create a local git repository based on Tiki trunk.
1. Create a new Git repository from Tiki trunk SVN repository
git svn clone https://svn.code.sf.net/p/tikiwiki/code/trunk
2. Checkout external repositories
Download git_svn_externals.pl script (alternatively you can use git_svn_clone_externals) and then place it in the root directory of your Tiki. Run the script. It will download all Tiki’s svn externals and add them to .git/info/exclude.
3. Known issues
- It is not possible to set SVN properties using git-svn (http://stackoverflow.com/questions/1271449/how-to-set-subversion-properties-with-git-svn)
- You have to remember to manually call git_svn_externals.pl every once in a while to update the externals repositories.
That is it. If you are not familiar with Git take a look at Git Cheat Sheet and My git svn workflow for more information.