J’ai créé mon projet versionné sous git, et maintenant, je veux le partager aux autres. Voici les étapes à suivre pour faire un clone du projet, l’uploader et le mettre à disposition.
On clone avec l’option ‘–bare’ le projet. Cela permet de créer un dépot composé uniquement de la base de données git. Ce dépot pourra ensuite être cloné par d’autres:
Initialized empty Git repository in /home/mycroft/tmp/test-sf.git/
$
On upload, ici sur mon serveur ‘remote-server’ en ssh dans mon public_html. Il sera du coup disponible:
9de29bb2d1d6434b8b29ae775ad8c2e48c5391 100% 15 0.0KB/s 00:00
ade6c53443196f3146de569b58b36bfcb5a98f 100% 196 0.2KB/s 00:00
cb726ceadb9b58db9877d442399cc84de9a10b 100% 51 0.1KB/s 00:00
Sur le serveur, il faudra mettre à jour les infos de ce dernier afin que le dépôt soit utilisable:
$ ssh login@remote-server
$ cd www/test-sf.git
$ git-update-server-info
$
De retour en local dans test-sf-git, on défini ce dépot cloné comme origin, cela nous servira pour pusher nos futurs modifs:
$ git remote add origin login@remote-server:test-sf.git
$
On vérifie la manip’:
* remote origin
Fetch URL: login@remote-server:test-sf.git
[...]
Pour mettre à jour ce dépôt, après de futurs modifications, on pourra push:
Everything up-to-date
(Là évidement j’avais pas de modification …)
De même, dans l’autre sens, on pull-era le dépôt:
From remote-server:test-sf
* branch master -> FETCH_HEAD
Already up-to-date.
Une personne tierce pourra à partir de ce moment clone notre dépôt:
$ git clone http://remote-server/~login/test-sf.git
Initialized empty Git repository in /home/mycroft/dev/test-sf/.git/
$