Le risposte a queste domande si trovano cercando con un motore di ricerca, ad esempio con Google. Per le esigenze che hai descritto, sarebbe sufficiente un normale repository CVS (o Subversion, o simile...).

Qui comunque si discute di problemi specifici nell'uso dei linguaggi, dei compilatori e degli ambienti di sviluppo.