Plusieurs outils de collaboration sont disponibles sur le marché. Le choix d'un outil dépendra de plusieurs critères (mode SaaS ou installation locale, Open Source ou proprio ...) et surtout du type de projet.
Pour améliorer l'environnement de développement initié dans les deux billets Installation eZ Publish 5 Composer machine virtuelle Ubuntu Server Nginx PHP-FPM et Intégration continue projet PHP PHPUnit Jenkins je vais ajouter un outil qui vas nous permettre de gérer le code source et de travailler à plusieurs sur le même projet d'une manière efficace.
Si vous avez un projet Open source, le choix le plus naturel c'est Github, célèbre mondialement chez les développeurs, et héberge une bonne partie des projets Open source qui font tourner le Web (Linux kernel, eZ Publish, Symfony, MongoDB , Rails, Bootstrap ...). Mais pour un Freelance qui veut avoir des repositories privés il faut passer par un abonnement premium qui démarre à 7$ / mois.
Bitbucket (famille Atlasian) est un concurrent (numéro 1 ?) de Github, son ultime avantage pour un Freelance ou une petite structure c'est la possibilité d'avoir un nombre illimité de repositories privés (modulo la NSA ^_^) pour une équipe de 5 personnes gratuitement.
Pour un comparatif entre les deux outils Bitbucket Vs Github
Git s'utilise très bien avec Bitbucket (ou Github), voici un tutoriel intéressant : Git, Bitbucket, And You
Les deux entreprise Atlasian et Github proposent des alternatives pour les entreprises qui veulent garder la main sur leurs codes source et héberger le tout en locale.
Stash (Atlasian) est très accessible pour les équipes de moins de 10 personnes : 10 $ la licence annuelle !
L'alternative Open Source : Gitlab
Gitlab est l'équivalent Open source de GitHub, il permet d'héberger des répertoires Git en local et de mettre en place plusieurs outils autour, afin de mieux gérer les projets à l'aide d'un gestionnaire de bugs (issues) ou encore d'un wiki pour la documentation.
Créé fin 2011, Gitlab est assez complet, et bénéficie d'une grande notoriété dans les grandes entreprises (Redhat, Nasa ..)
Gitlab propose deux versions, une Community et une Entreprise Edition avec du support et quelques fonctionnalités en plus.
Pour ajouter Gitlab à l'environnement de développement, voici un bon tutoriel : Manage Git Repositories with GitLab on Ubuntu 14.04
Pour l'installation avec Mysql au lieu de PostgreSQL : How To Set Up GitLab As Your Very Own Private GitHub Clone