$ git -C <path-to-remote> init
$ git -C <path-to-remote> init --bare
L'initialisation bare va créer un dépôt sans arbre d'historique, toutes les modifications seront directement enregistrées sur la racine. Ce genre d'initialision est à réserver pour les dépôts dans lesquels sont déposés les copies des documents, tytpiquement les dépôts du serveur distant.
Toutes les modifications/ajouts faits sur le dépôt local ne sont pas trackés tant qu'un ADD n'est pas fait
$ git -C <path-to-remote> add -A
$ git -C <path-to-remote> add <nom_du_fichier>
Il est possible d'ajouter plusieurs fichiers en utilisant les caractères spéciaux
$ git -C <path-to-remote> add *.txt
Les modifications ne seront prises en compte sur le local qu'aprés un commit
$ git -C <path-to-repo> commit –m '<message du commit>'
On peut indifféremment utiliser un alias ou une url pour se référer au remote lorque l'on ne veut pas stocker en clair les comptes dans le fichier .git/config
$ git -C <path-to-repo> remote show [<url-to-remote>|<alias-of-remote]
$ git -C /data/espace-pro/workspace/git/kickstarts remote show "http://user@xx.xx.xxx.xx:88/jacques/kickstarts.git" distante http://xxx:yyyyyyy@xx.xx.xxx.xx:88/jacques/kickstarts.git URL de rapatriement : http://xxx:yyyyyyy@xx.xx.xxx.xx:88/jacques/kickstarts.git URL push : http://xxx:yyyyyyy@xx.xx.xxx.xx:88/jacques/kickstarts.git Branche HEAD : master Référence locale configurée pour 'git push' : master pousse vers master (à jour)
Utiliser commit sans indiquer de message
$ git -C <path-to-repo> commit
$ git -C /data/espace-pro/workspace/git/kickstarts commit Sur la branche master Votre branche est en avance sur 'origin/master' de 2 commits. (utilisez "git push" pour publier vos commits locaux) rien à valider, la copie de travail est propre
La commande git-clone est utilisée pour cloner un repository git distant dans un répertoire local. Par défaut, la commande recrée le répertoire contenant le dossier .git et y télécharge le contenu du repository.
$ git -C <path-to-repo> clone [<url-to-remote>|<alias-of-remote]
$ git -C /data/espace-pro/workspace/git/tests clone "http://xxx:yyyyyyy@xx.xx.xxx.xx:88/jacques/kickstarts.git" Clonage dans 'kickstarts'... remote: Counting objects: 37, done. remote: Compressing objects: 100% (33/33), done. remote: Total 37 (delta 22), reused 0 (delta 0) Unpacking objects: 100% (37/37), done. Vérification de la connectivité... fait.
La commande git pull est en fait la commande qui regroupe les commandes git fetch suivie de git merge. Cette commande télécharge les données des commits qui n'ont pas encore été récupérées dans la branche locale puis fusionne ensuite ces données.
$ git -C <path-to-repo> pull [<url-to-remote>|<alias-of-remote] <branche>
$ git -C /data/espace-pro/workspace/git/tests/kickstarts/ pull http://xxx:yyyyyyy@xx.xx.xxx.xx:88/jacques/kickstarts.git Depuis http://xx.xx.xxx.xx:88/jacques/kickstarts * branch HEAD -> FETCH_HEAD Already up-to-date.
$ git -C <path-to-repo> push [<url-to-remote>|<alias-of-remote] <branche>
$ git -C /data/espace-pro/workspace/git/tests/kickstarts/ push http://xxx:yyyyyyy@xx.xx.xxx.xx:88/jacques/kickstarts.git master Everything up-to-date
La commande remote permet de créer des alias qui seront enregistrés dans le fichier .git/config du dépôt local
$ git -C <path-to-repo> remote -v
$ git -C /data/espace-pro/workspace/git/kickstarts-bkp/ remote -v kickstarts http://xxx:yyyyyyy@xx.xx.xxx.xx:88/jacques/kickstarts.git (fetch) kickstarts http://xxx:yyyyyyy@xx.xx.xxx.xx:88/jacques/kickstarts.git (push)
$ git -C <path-to-repo>s remote add <nomcourt> <url>
$ git -C <path-to-repo> remote remove <nomcourt>
$ git -C <path-to-repo> remote set-url <nomcourt> <url>