switch to python, support git and svn