Quelques commandes git bien utiles
Cloner un repository
git clone ssh://user@domain.com/repo.git
Créer un nouveau repository localement
git init
Voir les changements dans votre espace de travail local
git status
Voir les modifications dans les fichiers édités
git diff
Ajouter toutes les modifications au prochain commit
git add .
Pour ajouter un fichier spécifique au prochaine commit
git add <FICHIER>
Pour commit les fichiers ajoutés précédemment
git commit -m "Mon commentaire"
Changer le dernier commit (Ne pas faire sur un commit publié)
git commit --amend -m "Nouveau message"
Voir la liste des commits, en affichant les derniers en premier
git log
Voir les changements sur un fichier spécifique
git log -p <FILE>
Qui a changé quoi et quand dans le fichier
git blame <FILE>
Voir toutes les branches existantes
git branch -av
Passer sur une autre branche
git checkout <BRANCH>
Créer une nouvelle branche
git branch <NEW-BRANCH>
Créer une nouvelle branche basée sur l'actuelle
git checkout --track <REMOTE/BRANCH>
Supprimer une branche locale
git branch -d <BRANCH>
Marquer la validation actuelle avec une balise
git tag <TAG-NAME>
Lister toutes les télécommandes actuellement configurées
git remote -v
Afficher des informations sur une télécommande
git remote show <REMOTE>
Ajouter un nouveau repository distant
git remote add <SHORTNAME> <URL>
Récupérer tous les changements à partir de <REMOTE> mais ne pas les intégrer à HEAD
git fetch <REMOTE>
Récupérer les changements et les merger/intégrer directement dans HEAD
git pull <REMOTE> <BRANCH>
Publier les changements locaux vers le dépôt distant
git push <REMOTE> <BRANCH>
Supprimer une branche sur le dépôt distant
git branch -dr <REMOTE/BRANCH>
Publier vos tags
git push --tags
Fusionner <BRANCH> dans HEAD
git merge <BRANCH>
Rebaser votre courant HEAD sur la <BRANCH> (Ne pas rebase les commits publié)
git rebase <BRANCH>
Annuler un rebase
git rebase --abort
Continuer un rebase après avoir fixé les conflits
git rebase --continue
Utilisez votre logiciel de merge pour résoudre les conflits
git mergetool
Utilisez votre éditeur pour résoudre manuellement un conflit et le marquer comme résolu
git add <RESOLVED-FILE> git rm <RESOLVED-FILE>
Annuler tous les changements locaux
git reset --hard HEAD
Annuler tous les changements dans un fichier spécifique
git checkout HEAD <FILE>
Revenir sur un commit (en produisant un nouveau commit avec des changements contraires)
git revert <COMMIT>
Réinitialisez votre pointeur HEAD sur un commit précédent et annulez toutes les modifications depuis
git reset --hard <COMMIT>
Réinitialiser votre pointeur HEAD sur un précédent commit et préserver tous les changements "Unstaged"
git reset <COMMIT>
Réinitialiser votre pointeur HEAD sur un précédent commit et conserver les modifications locales non validées
git reset --keep <COMMIT>