Outils pour utilisateurs

Outils du site


public:kb:git

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
public:kb:git [2015/05/01 22:52] – [Mettre de côté] laurent.jolypublic:kb:git [2025/01/06 17:41] (Version actuelle) – supprimée laurent.joly
Ligne 1: Ligne 1:
-<WRAP tabs> 
-  * [[:start|Accueil]] 
-  * [[:public:kb|KB]] 
-</WRAP> 
-====== GIT ====== 
  
-==== Liens ==== 
-  * [[http://git-scm.com/book/fr/v1/|Git Book]] LE site Git, très complet 
-  * Si vous n'avez que quelques minutes, liste ce [[http://rogerdudler.github.io/git-guide/index.fr.html|Petit guide]] il va vraiment à l'essentiel.  
-===== Installer Git client ===== 
-==== Installer ==== 
-Par les dépots 
-<code> 
-sudo apt-get install git 
-</code> 
-un peu compliqué non ? 
- 
-==== Déclarer un compte ==== 
-<code> 
-git config --global user.name "Your_Name" 
-git config --global user.email "youremail@domain.com" 
-</code> 
- 
-Ces commandes vont avoir pour effet de renseigner le fichier ~/.gitconfig en lui ajoutant : 
-<code> 
-[user] 
-        name = Your_Name 
-        email = youremail@domain.com 
-</code> 
- 
-===== Projet ===== 
- 
-Déclarer un dossier comme projet git.\\ 
-Se placer dans le répertoire en question et : 
-<code> 
-git init 
-</code> 
- 
-ou pour directement récupérer le contenu d'un projet existant : 
- 
-==== Cloner un repository ==== 
-<code> 
-git clone url_du_repository 
-</code> 
-url_du_repository peut prendre plusieurs formes, selon le protocole utilisé :  
-  * ssh : <code>utilisateur@serveur:/chemin/projet.git</code> 
-  * http : <code>http://exemple.com/projetgit.git</code> 
-  * local et git : voir [[http://git-scm.com/book/fr/v1/Git-sur-le-serveur-Protocoles|cette documentation]] 
-===== Commandes ===== 
-==== Ajouter un fichier ==== 
- 
-NB : Il faut être placé dans le dossier du repository ... 
- 
-<code> 
-git add mon_fichier.txt 
-</code> 
- 
-On peut procéder ainsi pour plusieurs fichiers, mais il est aussi possible d'indiquer tout un répertoire (et son arborescence) : 
-<code> 
-git add . 
-</code> 
- 
-==== Supprimer un fichier ==== 
- 
-=== Supprimer et garder les versions === 
-<code> 
-git rm fichier.txt 
-</code> 
- 
-=== Supprimer et ne pas garder les versions === 
-<code> 
-git rm --cached fichier.txt 
-</code> 
- 
-==== Renommer un fichier ==== 
-<code> 
-git mv ancien_nom nouveau_nom 
-</code> 
- 
-==== Commit ==== 
-<code> 
-git commit -am "un message" 
-</code> 
- 
-==== Statut ==== 
-<code> 
-git status 
-</code> 
- 
-==== Historique  des commits ==== 
-Connaitre l'historique des commits 
-<code> 
-git log 
-</code> 
- 
-==== Revenir en arrière ==== 
-Revenir en arrière 
-<code> 
-git checkout empreinte_SHA 
-</code> 
- 
- 
-==== Envoyer son code au serveur ==== 
- 
-<code> 
-git push origin master 
-</code> 
-push : envoyer\\ 
-origin : nom par défaut du serveur remote\\ 
-master : branche courante\\ 
- 
-==== Récupérer le code depuis le serveur ==== 
-<code git> 
-git pull origin master 
-</code> 
-==== Mettre de côté ==== 
-Supposons qu'on ait une version stable d'un programme, passée en prod.\\ 
-On décide de travailler sur une nouvelle fonctionnalité (pour ca on édite nos fichiers locaux) quand un bug trouvée en production nécessite qu'on le corrige immédiatement.\\ 
-Problème : ce qu'on est en train de faire n'est pas terminé et ne peut pas être passé en production, donc si on résout le bug et qu'on commit, on enverra aussi le code non finalisé (en supposant qu'il est dans le même fichier que le bug ...). Donc, il faut pouvoir mettre de côté ce qu'on est en train de faire.\\ 
-Les branches permettent cela, mais aussi, en restant dans la même branche, le stash : 
-<code> 
-# je travaille sur mon programme 
-touch fichier.txt 
-echo "premiere edition" >>fichier.txt 
-# je le passe sur le serveur, pour le passer en production. 
-git add .  
-git commit -m "premiere edition"  
-git push origin master 
-# maintenant je decide de travailler sur une nouvelle fonctionalite, quand je suis interrompu 
-echo "deuxième édition, pas terminée... ">> fichier.txt   
-#on met de côté l'édition en cours car on doit traiter une urgence  
-git stash  
-# on est retourné sur le précédent commit 
-#on édite puis on commit...  
-echo "correction du bug" >>fichier.txt 
-git commit -am "correction du bug" 
-git push origin master 
-# on revient sur l'édition en cours  
-git stash pop 
-</code> 
public/kb/git.1430513559.txt.gz · Dernière modification : 2015/05/01 22:52 de laurent.joly