0
INDEX
Outils
Smart Git/HG: prend en charge Git et Mercurial, pratique notamment pour voir les changements mis en « stash ».
En mode console: tig
Très rapide pour naviguer dans les commits, avec une bonne coloration syntaxique c’est parfait. J’utilise oh-my-zsh et Solarized :
On peut aussi utiliser un pipe et lui envoyer le résultat d’une commande git, pour obtenir la coloration et naviguer dans les lignes, par exemple : git log | tig
Commandes
Voir ce qui va être poussé vers le repository distant
git diff origin/master
Voir l’état de la branche
git status
Créer une branche
git clone <repository> git checkout <revision> git checkout -b <branch_name> git commit -m "Create branch <branch_name>" git push origin <branch_name>
Changer de branche
git checkout <branch_name>
Roolback vers un commit particulier
git clone git@github.com:repo.git git reset --hard 25616524640ffe74671fe5cd81ac7295338076f8 git reset --soft HEAD@{1} git commit -a -m" Rollback commits" # View what's going to be pushed" git diff origin/master git push
Reporter un commit d’une branche vers une autre (ici master vers branche)
La commande cherry-pick conserver l’auteur et la date d’origine.
git clone git@github.com:<repository>.git git checkout 1_x git cherry-pick <revision sha> git add git commit git push
Pour reporter plusieurs commits
Le commit de gauche n’est pas inclu :
git cherry-pick <oldest sha>..<latest sha>
Le commit de gauche est inclu :
git cherry-pick <oldest sha>^..<latest sha>
Supprimer un tag
git pull git tag -d 1_1 git push origin :refs/tags/1_1
Obtenir la liste des fichiers modifiés entre 2 commits
git diff-tree -r --no-commit-id --name-only --diff-filter=ACMRT c3dc087 268de04 | sed -e 's/.*/"&"/g'
Existe aussi en mode échappement des espaces :
git diff-tree -r --no-commit-id --name-only --diff-filter=ACMRT c3dc087 268de04 | sed -e 's/ /\\\ /g'
Voir aussi :
Importer un repository GIT dans un autre
Importer un repository GIT dans un autre
DATE 27 Mai 2013