Vous êtes sur la page 1sur 2

Historique des commits Branche fast-forward

git log [--graph] [--all] [--oneline] Une seule des branches a évolué → déplacement du
HEAD simple
MEMO GIT git log -- <fichier>
Consulter une version de fichier Branche non FF
git show <SHA1>:<fichier> Commit de merge (2 parents)
ou git merge --no-ff
systemctl reload nginx Gestion de conflit
Modification de zone/HEAD git status : Détecter fichiers qui posent pb
git wip
(https://carolynvanslyck.com/blog/2020/12/git-wip/) Récupérer un fichier supprimé dans le ZT git ls-files -u[nmerged]
git status Modification du fichier
git checkout <SHA1> <fichier> git add <fichier>
Récupérer un fichier d’une autre branche git commit
Création et config
git checkout <autreBr> -- <fichier> Abandon (en cours)
Dépôt Reset git merge --abort
git init [--bare] <nomDepot> ZI → ZT, ZD → ZI Annulation
Récupération d'un dépot git reset --mixed <SHA1> git reset --hard HEAD~1
git clone <url> <nomDepot> ZD → ZI (ZT non modifiée)
git clone ssh://gitadmin@projets-dev.univ- git reset --soft <SHA1>
Dépôt distant
amu.fr/[nomDepotGit] nomLocal
ZD (ZI et ZT vidées) Description
Config git reset --hard <SHA1> git remote show origin
Config globale ./gitconfig Historique de HEAD Lister les branches distantes
Pour le dépot .git/config git reflog git branch -r
Voir Récupérer une branche distante + suivi
git config [--global] --list git checkout -b <brLoc> origin/<brDist>
Modifier
Branche = SHA1 de HEAD
git checkout <branche>
git config [--global] section.param <valeur>
Création Partager une branche
git branch <branche> [SHA1] git push -u origin <brLoc>
Reccueillir de l'information git checkout -b <branche> Associer branche locale/distante
Changement git branch --set-upstream <brLoc>
État du dépôt [short] git status origin/<brDist>
git status [-s] [-b <branche>] git checkout <branche> Supprimer une branche distante
Afficher les modifications (commit, cache, travail) git checkout - git push origin --delete <brDist>
git diff (zone de travail) Renommage git push
git diff --cached (cache) git branch -m <old> <new> historique clean
git diff --stat <SHA1> <SHA1> Suppression branches FF
Afficher les contenus git branch -d <branch> -D pour forcer git pull
git cat-file -t <SHA1> : type du fichier Liste des branches [et du dernier commit + msg] git fetch + merge (rebase)
git cat-file -p <SHA1> : contenu git branch [-v] Réécrit l’historique
Modifications / auteur git pull --rebase
git blame [-L x,+y] <fichier> [HEAD]
Fusion de branche : merge
Synchro local/distant
Voir le contenu du fichier index Fusion git fetch --all –prune
git ls-files --stage git merge <branche>
Tag = label sur un SHA1 Stash - mettre de coté du code user.name
core.editor
Lister les tags Création ZT et ZI core.pager
git tag git stash
alias.<nomAlias> <attr de cmd>
Créer un tag git stash save <message>
git config [--global] section.param <valeur>
git tag -a <tag> [SHA1] [-m <msg>] Lister
Pousser un tag git stash list Prompt git
git push origin <tag> SHA1 En fin de fichier /etc/bash_completion.d/git-prompt
Récupérer
git stash apply stash@<n°> PS1=$PS1'$(__git_ps1 "(%s) ")'
Supprimer un tag distant
git push origin :refs/tags/<tag> source /etc/bash_completion.d/git-prompt
Récupérer et supprimer
Pousser les tags déjà sur serveur git stash pop stash@<n°>
git push --follow-tags Récupérer dans une branche et supprimer Bonnes pratiques
Inclure les tags dans les données à pousser git stash branch <branche> stash@<n°>
git fetch --all Supprimer • Commencer le dépot avec le .gitignore
Récupérer les tags git stash drop stash@<n°> • Commit atomique
git pull --tags
Staging • Msg de commit : header + ligne vide + détail
Modification d’historique du message
Décomposer un fichier en bloc • Définir le contenu et nb de car du header
Rebase simple git add -p <fichier>
• Définir : Homogénéisation du fichier config
déplacement HEAD commun + déplacement HEAD y/n/q[uit]/a (y+blocs suivants)/d (non
<branche> + rejoue commits branche courante +blocs suivants)/s[plit]/e[dite]/k[ill] • Définir et formaliser ce qu'est un tag v.
[major].[minor].[patch]
git rebase <branche>
Commit • Définir et formaliser les cas de merge et de
Conflit de rebase rebase
git add Cherry-picking
• Rebase interactif avant de pousser sur le
git rebase --continue Rejouer un commit
serveur
git rebase --abort git cherry-pick [--no-commit] <SHA1>
• Ne pas avoir tag et branche de même nom
Rebase interactif (1 seule branche) git cherry-pick --continue|--abort|--quit
• Jamais de revert sur un commit de merge
Suppression, fusion, réécriture msg de commit Revert
git rebase -i <SHA1> Joue le commit à l'envers → nouveau commit • Merger master dans branch régulièrement

Modification dernier commit git revert <SHA1>


git commit --amend Supprimer un fichier
Supprimer un fichier git rm <fichier>
git filter-branch --tree-filter 'rm -f git commit
<file>'
Modifier tous les msg de commit
Les zones de git Divers
git filter-branch -f --commit-filter
ZT zone de travail : fichiers et répertoires, commune git mergetool –tool-help
<./script.sh> HEAD
à toutes les branches git mergetool -t <outil> <fichier>
Retourner à l’historique d’origine
ZI zone d’index ou de cache : modifications pour le
git reset <SHA>
prochain commit
Conserver seulement un répertoire et son -- Le parametre suivant est un fichier
ZD dépot local : data et metadata git checkout <autreBr> -- <fichier>
historique
git filter-branch -f --prune-empty -- Environnement Git .. Sauf
subdirectory-filter <directory> HEAD Commits dispo dans brDist mais pas dans brLoc
User.email git log HEAD..origin/<brDist>

Vous aimerez peut-être aussi