Skip to content

Latest commit

 

History

History
176 lines (117 loc) · 5.6 KB

File metadata and controls

176 lines (117 loc) · 5.6 KB

Git | JS Natif | React | React native | Nuxt Js | Test js | BEM | Jest


Configuration

Configurer les informations utilisateur pour tous les repos locaux

git config --global user.name "[name]"
Définit le nom que vous souhaitez attacher à vos commits

git config --global user.email "[email address]"

git config --global color.ui auto
Permet une coloration des lignes de commandes en sortie

Créer des répertoires

Démarrer un nouveau repo ou en obtenir un à partir d'une URL existante

git init [project-name]
Crée un nouveau repo local avec le nom spécifié

git clone [url]
Télécharge un projet et son historique de version

Ajout de fichiers et commit

git status
Répertorie tous les nouveaux fichiers ou modifiés à être validés

git diff
Affiche les différences entre les fichiers qui n'ont pas encore été stage (avant git add .) et les fichiers du dernier commit

git add [file]
Mise en zone de staging. Prepare les fichiers pour le versionning

git diff --staged
Affiche les différences entre les fichiers dans la zone de staging et les fichiers du dernier commit

git diff-tree --no-commit-id --name-only -r
Lister tous les fichiers concernés par un commit

git reset [file]
Enlève le fichier de la zone de staging en gardant les modifications apportées au fichier

git commit -m "[descriptive message]"
Enregistre les fichiers de la zone de staging dans l'historique de versionning

Branches

git branch
Liste toutes les branches locales du repo courant

git branch [branch-name]
Crée une nouvelle branche

git branch --contains
Lister les branches qui contiennent un commit en particulier

git checkout [branch-name]
Se déplacer sur une branch

git checkout -b [branch-name]
Crée la branche et se positionne dessus

git merge [branch]
Combine l'historique de la branche spécifiée dans la branche courante

git branch -d [branch-name]
Supprimer une branche

Déplacer et supprimer des fichiers versionnés

git rm [file]
Supprime le fichier du répertoire de travail et envoye dans la zone de staging le fichier supprimer

git mv [file-original] [file-renamed]
Modifie le nom du fichier et le prépare pour le commit (zone de staging)

Voir l'historique

git log
Liste l'historique des versions de la branche courante

git log --follow [file]
Liste l'historique de version pour un fichier spécifique, y compris les fichiers renommés

git log master..[branch-name]
Liste uniquement les commit de [branch-name] même si on merge master sur [branch-name]

git diff [first-branch]...[second-branch]
Affiche les différences de contenu entre deux branches

git show [commit]
Affiche les métadonnées et les changements de contenu pour le commit spécifié

Ignorer les fichiers

Exclure les fichiers temporaires et les chemins d'accès

*.log
build/
temp-*

Un fichier nommé .gitignore permet d'ignorer certains fichiers/dossiers de l'historique de versions

git ls-files --other --ignored --exclude-standard
Liste tous les fichiers ignorés dans ce projet

Rétablir un commit

git reset [commit]
Défait tous les commits après le commit spécifié et garde les modifications localement

git reset --hard [commit]
Défait tous les commits après le commit spécifié et et supprime le modification locale. Permet de revenir à la version du code au moment du commit spécifié

git reflog
Revenir sur certaines commandes trop impulsives (comme un reset ou un rebase)

Stash

Mettre de côté ou restaurer des modifications incomplètes

git stash
Stocke temporairement tous les fichiers modifiés mais pas encore en zone de staging

git stash pop
Restaure les fichiers qui ont été stash

git stash list
Liste tous les fichiers en zone de stash

Synchroniser les modifications

git fetch [bookmark]
Télécharge tout l'historique du repo bookmark

git merge [bookmark]
Fusionne la branche bookmark avec la branche courante (Se positionner sur la branche sur laquelle on veut faire la fusion)

git push [alias] [branch]
Upload tous les commits

git pull
Télécharge tous les commits

Rebase interactif

Le rebase interactif permet de retravailler son historique avant de merge

git rebase -i [code commit]

pick => utiliser le commit
reword => renommer un commit
squash => permet de fusionner le commit avec le commit précédent
fixup => peremt de fusionner le commit avec le commit précédent mais supprime le log message
drop => supprime un commit

git rebase --abort
Permet de quitter le mode rebase