Espace Wiki ∂'Alembert Espace Guide de survie du SysAdmin Espace Guide de survie du Développeur Espace Institut ∂’Alembert Le Site Aide PmWikiFr Help PmWiki |
git est un système de contrôle ouvert, open source de version et distribué conçu pour tout projet, du plus petit au très grands, avec rapidité et efficacité. Configuration de basegit piste des commits en vérifiant le nom et l'email. Il est donc important de remplir ces informations: $ git config --global user.name "Firstname Lastname" $ git config --global user.email "your_email@youremail.com" Commandes de basesCréer un dépôt$ cd /path/to/repo $ git init $ vi README.rst $ git add README.rst $ git commit -m 'mon premier commit' Ajouter des fichiers à un dépôt$ cd /path/to/repo $ vi README.rst $ git add README.rst $ git commit -m 'add a README' Autres commandes de base
$ git status -s
$ git log
$ git help [<command>] Les Branches
$ git branch * master paramiko ssh-subprocess
$ git checkout <branch>
Configurations AvancéesAliasesOn peux également créer des alias pour les commandes git. Voici quelques aliases utils: $ git config --global alias.l 'log --graph --decorate --oneline --all' $ git config --global alias.ll "log --graph --decorate --pretty=format:'%C(yellow)%h %Cred%ad %Cgreen%d %Creset%s' --date=short --all" $ git config --global alias.s 'status --short --branch' $ git config --global alias.d 'diff --name-status -w' $ git config --global alias.dw 'diff -w' $ git config alias.l 'log --graph --decorate --oneline --all' $ git config alias.ll "log --graph --decorate --pretty=format:'%C(yellow)%h %Cred%ad %Cgreen%d %Creset%s' --date=short --all" $ git config alias.s 'status --short --branch' $ git config alias.d 'diff --name-status -w' $ git config alias.dw 'diff -w' fusion de commitUne commande simple pour fusionner les deux dernier commit: $ git reset --soft "HEAD^" $ git commit --amend réecriture du dernier commitJuste pour avoir un message plus propre $ git commit --amend githubgithub [1] est un site de dépôt public (gratuit) et privé (payant) permettant de partager des projets communs. Configuration du compteEn plus du nom et de l'email, il faut également définir des informations spećifiques: $ git config --global github.user username $ git config --global github.token 0123456789yourf0123456789token Créer un dépôtsuivre les infos du site pour créer un dépôt public, ici bin. Il indique les commandes pour ajouter les fichiers sur le serveur. aller sur le dépôt en local: $ cd /path/to/repo et y mettre les fichiers: $ git remote add origin git@github.com:masterzu/bin.git $ git push -u origin master Mettre à jour le dépôtAprès avoir modifié les fichiers, on peut envoyer les fichier sur le dépôt maître: $ git push Serveur git
Configuration serveurSur un serveur, nous allons créer une arborescence git accessible en ssh.
# adduser git $ su git $ cd $ mkdir .ssh && chmod 700 .ssh $ touch .ssh/authorized_keys && chmod 600 .ssh/authorized_keys
# which git-shell # cat /etc/shells # echo `which git-shell` >> /etc/shells # cat /etc/shells # chsh -s `which git-shell` git Après cette limitation, il ne sera plus possible de lancer un shell avec le compte git Configuration clientclone le dépôt distant en localIl suffit, comme a chaque fois de cloner le dépôt avec la commande : $ git clone git@server:<nom_du_depot>.git mettre un dépôt local sur le depot serveur
$ git remote add mondepot git@server:<nom_du_depot>.git $ git remote -v mondepot git@server:<nom_du_depot>.git (fetch) mondepot git@server:<nom_du_depot>.git (push)
$ git push <nom_du_depot> par défaut, cette commande crée la branche master du dépôt <nom_du_depot> AutresGit dans le prompt BASHvoir le script de Matthew J. McCullough [BASH], 2013, (consulté le 18 feb 2016) Liens ExternesLes bases
Les workflows
Utilisation Avancée
|