32 Aide-mémoire sur les commandes Git pour les débutants
La feuille de triche des commandes GIT est une référence pratique pour les développeurs et contient les commandes les plus couramment utilisées pour les projets git.
Qu'est-ce que GIT ?
GIT est un référentiel open source où les utilisateurs peuvent placer leurs fichiers, y compris le code, les zips, le texte ou l'ensemble du projet.
Il possède plusieurs fonctionnalités, comme la collaboration, le contrôle de version, process contrôle, etc. GIT stocke les fichiers plus efficacement et offre une meilleure intégrité que les autres systèmes de contrôle de version. Git est un outil en ligne de commande.
Qu'est-ce que GitHub ?
Avec son interface utilisateur soignée, GitHub, un hub pour les développeurs, est devenu le système de contrôle de version le plus utilisé et est accessible à tous, n'importe où.
Flux de travail Git
Git a différent workflows, et chaque projet doit en avoir un en fonction de ses besoins. Le workflow Git n'est rien d'autre qu'un workflow léger basé sur une branche qui aide les équipes qui déploient régulièrement des projets.
Par exemple, une création de workflow Git forkingateune copie locale du référentiel. Ainsi, chaque développeur dispose d'un espace de travail local et d'un référentiel central. Ce type de flux de travail est efficace lorsque plusieurs développeurs sont impliqués et permet aux développeurs de collaborerate sur la copie forkée avant d'apporter des modifications au référentiel principal.
Pourquoi avons-nous besoin de Git ?
Comme Git est un système de contrôle de version, les développeurs y travaillent constamment pour enregistrer leurs modifications, les rendre visibles pour les autres, fusionner leurs modifications avec d'autres, et bien plus encore.
Pour toute modification du référentiel Git, les développeurs doivent connaître les bonnes commandes pour la bonne action. Vous trouverez ci-dessous une liste des commandes Git importantes et couramment utilisées :
Commandes Git courantes
git ajouter
Pour ajouter le(s) fichier(s) spécifié(s) à la mise en scène
git add <file> -- add a specific file
git add * -- add all the files
arc githive
Createl'archives de commits, de branches et d'arborescences et combine plusieurs fichiers en un seul. Vous pouvez récupérer le contenu en extracting les fichiers en cas de besoin
git archive HEAD
— create un archive de la référence HEAD du dépôt
git archive output = ‘.tar’
— stocker l'archived fichiers à l'emplacement donné
git archive --format=tar.gz
— spécifie le format de l'archivefichier d, comme tar, zip, tar.gz
branche git
Répertorie toutes les branches du référentiel. Une nouvelle succursale portant le nom sera crééeated si une branche est spécifiée. Pour supprimer une branche, utilisez l'option -d avec le nom de la branche. Pour renommer une branche actuelle, utilisez -m.
git branch
— répertorie toutes les succursales<a href="https://geekflare.com/how-to-create-a-new-git-branch/">git branch</a> <branch_name> -- creates a new branch named 'branch_name' but doesn't check out the new branch.<br><br><code>git branch -d <branch_name>
— supprime la branche, preveffectue la suppression si des modifications non fusionnées sont présentesgit branch -D <branch_name>
— forcer la suppression de la branche même s'il y a des modifications non fusionnéesgit branch -m <branch2>
— renommer la branche courante
fichier chat git
Afficher le contenu ou les informations de taille/type des objets du référentiel
git cat-file <object>
— affiche le contenu de l'objetgit cat-file -t <object>
— affiche le type d'objetgit cat-file -s <object>
— indique la taille de l'objetgit cat-file -p <object>
— imprimer le type d'objet de manière joliegit cat-file -e <object>
— affiche l'erreur sur stderr si l'objet a un format invalide ou n'existe pasgit cat-file <type> <object>
— affiche le contenu brut d'un objet
git caisse
Pour basculer entre les différentes branches d'un référentiel, utilisez-le avec précaution, car il n'y a pas d'annulation pour cela.
git checkout <branch_name>
— vérifie la branche spécifiéegit checkout -b <branch_name>
— create une nouvelle branche et passer à cette branche
Par exemple :
C:\Users\geekflare>git checkout -b development_branch
Switched to a new branch 'development_branch'
nettoie
Nettoyer le directeur de travail. Les fichiers validés ne seront pas supprimés
git clean -n
— répertorie les fichiers qui seront supprimésgit clean -f
— supprime les fichiers
git clone
Create une copie du dépôt existant dans un nouveau répertoire. Utile pour obtenir une copie de développement d'un dépôt central.
git clone <central_repo> <new_dir>
— create une copie du dépôt central dans un nouveau répertoire
Par exemple :
C:\Users\geek>git clone geekflare master
Cloning into 'master'…
done.
git clone -branch <branch> <repo>
- clone une branche du référentiel mentionné
git commet
Enregistre les modifications dans un environnement intermédiaire afin que d'autres puissent les voir.
git commit
- valider les modifications apportées à la mise en scènegit commit -m <useful_msg>
- donne un message lors de la validation pour mettre en évidence les modifications apportéesgit commit -a
- valider les modifications directement, sans mise en scène
Supposons que vous ayez ajouté un fichier nommé samplefile.txt à votre répertoire de travail et que vous souhaitiez valider le fichier. En donnant la commande ci-dessus, vous obtiendrez la sortie :
Please enter the commit message for your changes. Lines starting
with '#' will be ignored, and an empty message aborts the commit.
On branch master
Initial commit
Changes to be committed:
new file: samplefile.txt
Une fois que vous avez envoyé le message, les modifications sont validées :
C:\Users\geekflare>git commit -m 'samplemsg'
[integration_branch (root-commit) ed52dd0] 'samplemsg'
1 files changed, 24 insertions(+)
create mode 100644 samplefile.txt
git config
Spécifie le niveau de configuration dans lequel écrire une valeur de propriété. Le niveau 'Local' est le niveau par défaut (lorsque rien n'est spécifié).
git config –local
— enregistre la configuration dans le répertoire .git du repogit config –global
— enregistre la configuration dans le répertoire personnel de l'utilisateurgit config –system
— contient la configuration de tous les utilisateurs et référentiels et se trouve à l'emplacementated dans le fichier de configuration git de la racine.
git diff
Comparez les changements dans le référentiel git, qui peuvent être effectués avant le staging, au staging et après le staging (commit).
git diff
- suivre les modifications du dépôt qui ne sont pas encore mises en scènegit diff --staged
- suivre les modifications des fichiers mis en scène (qui ne sont pas validés)git diff HEAD
- suivre les modifications du fichier après la validationgit diff <commit1_id> <commit2_id>
— suivre les changements entre deux commits ; vous pouvez trouver les commit_ids en utilisant 'git log -p --follow --filename
»
git chercher
Récupérer une branche ou l'intégralité du référentiel distant
git fetch <remote-url>
- obtenir l'intégralité du référentiel à partir de l'URL du référentiel distantgit fetch <branch_url> <branchname>
— récupérer la branche spécifiquegit fetch -all
— récupérer toutes les branches d'un dépôt distantgit fetch origin
— mise à jourate et le sync le dépôt local avec les nouvelles modifications dans le dépôt distant
git fsck
Fs Système ChecK La commande vérifie la validité et la connectivité des objets de la base de données. Il vérifie le SHA-1ID des objets et les connexions qu'ils établissent. Fsck est utile pour récupérer des commits et des fichiers perdus.
git fsck –full
git gc
Exécute la récupération de place sur le référentiel actuel et nettoie les fichiers inutilisés.
git gc
git grep
Recherche un contenu spécifique dans le référentiel. Git fournit de nombreuses options pour rechercher de différentes manières
git grep -i ‘search_term’
— recherche en ignorant la casse [L'homme et l'homme seront les mêmes]git grep -f <file_name>
- afficher les modèles correspondants d'un fichier particuliergit grep -e ‘search-term’
- utilisez -e pour la correspondance de modèlegit grep -E ‘regexp|multiple_exp’
–Recherche d'expressions régulières, nous pouvons en rechercher plusieurs en utilisant l'opérateur pipe (OR)git grep -n ‘expr’
— numéro de ligne de préfixe de la ligne correspondantegit grep -c ‘expr’
- affiche le nombre de lignes qui correspondent au lieu de chaque ligne
git ls-tree
Pour lister le contenu d'un objet arbre du répertoire courant.
git ls -tree -d <path>
- affiche uniquement l'entrée d'arborescence spécifiée, pas les enfantsgit ls -tree -r
— récurrence dans les sous-arbresgit ls -tree -l
- affiche la taille des objets de fichier (blob)git ls -tree --name-only
- afficher uniquement les noms de fichiers et non la sortie longuegit ls -tree --full-name
- affiche les noms de chemin complets et pas seulement le chemin relatif au répertoire courant
Mise en situation :
C:\Users\geek>git ls-tree --full-tree -r HEAD
100644 blob e883e60087e84f1660a9673ccb86eb0adc4f004d samplefile.txt
100644 blob 1426dc6fbff0677a484b248983a8740ff30fbb80 sample_jsindex.js
git init
Create un nouveau référentiel vierge. C'est la première commande que vous exécutez pour créer un projet git.
git init
— createsa dépôt .git dans le répertoire de travail,
Par exemple, pour créerate un nouveau dépôt appelé 'geekflare', donnez la commande comme suit :
$ git init geekflare
Initialized empty Git repository in C:/Users/geek/geekflare/.git/
git instaweb
Interface utilisateur vers browse le dépôt git via abrowseuh. Utilise le script CGI GitWeb pour la même chose.
git instaweb --httpd=webrick
— démarre le serveur (httpd) et ouvre le web browseuh sur la page.
Pour arrêter le serveur, utilisez la commande ci-dessus avec l'option –stop.
gitlog
Enregistre chaque activité dans le référentiel git.
git log
— affiche les derniers commitsgit log --oneline
— affiche la sortie avec les 7 premiers caractères de SHA et le message de commit avec un commit par lignegit log stat
— affiche plus d'informations sur les fichiers modifiés, comme le nombre de lignes ajoutées/supprimées, un résumé du nombre total d'enregistrements modifiés, les lignes ajoutées/suppriméesgit log --patch (or -p)
— affiche les fichiers modifiés, les modifications spécifiques et leur emplacementgit log --graph
— Afficher les résultats du journal sous forme de graphiquegit log -<n>
— affiche le dernier 'n' nombre de commitsgit log --after=<date/x days/yesterday>
— afficher tous les commits après un d spécifiéate. Vous pouvez utiliser --before
pour afficher les commits avant le d spécifiéategit log --author=<author_name>
— afficher les commits d'un auteur particulier (utilisateur).git log --grep=<commit message>
— filtre les commits en fonction du message de commit
git fusionner
Intégréateregroupe tous les fichiers de développement dans une seule branche, combine deux branches et fusionne plusieurs validations en un seul historique. La fusion s'arrête en cas de conflit et git présente les fichiers en conflit. Une fois les conflits résolus resolved, la fusion continue.
git checkout -b
- d'abord, vérifiez la branche à fusionner
git add <file>
git commit
- ajouter et valider les fichiers
git checkout master
git merge
— fusionner la branche avec master
git pruneau
Supprime (Prunes) les fichiers inaccessibles depuis la branche actuelle. C'est un nettoyage process pour supprimer les fichiers inutilisés de la branche
git prune -n
- ne taillez pas, montrez simplement ce que tout peut être taillégit prune -v
— affiche le résultat des actions effectuées par le pruneaugit prune --progress
— montre la progression du pruneaugit fetch --prune
— taille tout le resteatebranches d
git pull
Il reçoit les données d'un serveur distant vers un référentiel de travail. Il a été mis à jourates la succursale locale (de travail) avec tous les latest fichiers du dépôt distant.
git pull
- tirez le dépôt distantgit pull <repo URL>
- tirer une branche distante particulière
git push
Pousse toutes les modifications locales dans le référentiel distant. C'est un téléchargement process exactement à l'opposé des commandes pull et fetchs
git checkout master
— consultez la succursale qui a le latepremiers changements
git push origin master
- pousser les modifications vers le référentiel distant
Mise en situation :
C:\Users\geek>git checkout development_branch
Switched to branch 'development_branch'
C:\Users\geek>git push master development_branch
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 4 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (4/4), 612 bytes | 204.00 KiB/s, done.
Total 4 (delta 0), reused 0 (delta 0), pack-reused 0
To master
[development_branch] development_branch -> development_branch
Nous pouvons également utiliser push pour supprimer une branche distante à l'aide de la commande git push --delete <branch>
.
Par exemple :
C:\Users\geek>git push master --delete development_branch
To master
[deleted] development_branch
rebase git
Combine plusieurs commits de différentes branches pour créerate un nouveau commit de base final. Utile avant de fusionner toutes les modifications, pour valider les modifications des différentes branches une par une (linéairement).
git rebase <branch name>
— combiner les commits en une base finale
S'il y a des conflits, resolve et continuez le rebase :git rebase --continue
Pour ignorer toute modification :git rebase --skip
télécommande git
Vérifie la configuration du serveur distant et autorise l'accès à la connexion entre distant et local.
git remote
— par défaut, il renvoie 'origin', le nom par défaut du serveur distant donné par Gitgit remote -v
- répertorie les noms courts et les URL de toutes les connexions à distance disponiblesgit remote add <short name> <remote url>
— ajouter explicitement le serveur distant aux connexions disponibles. Le nom court peut être utilisé pour les commandes git au lieu de donner l'URL entière.git remote remove <remote url/short name>
— supprime le serveur distant du référentiel
git réinitialiser
Revenir à l'applicationrevcommit sérieux et ignorer les modifications apportées après ce commit
git reset <hash of the commit>
— restaure le dépôt dans le commit spécifié. Git conservera l'historique des commits, vous pouvez donc effectuer une autre réinitialisation avec un commit différent (hachage) pour annuler une réinitialisation.
vas-y
Supprime le fichier spécifique de git. Vous pouvez annuler l'effet de rm à l'aide de la commande reset ou checkout
git rm <file_ name>
— supprimer le fichier spécifique
Pour supprimer des fichiers de git mais les conserver dans votre local (staging), utilisez :
git rm --cached
spectacle git
Affichez n'importe quel objet tel qu'un blob, un arbre, un commit ou une balise en spécifiant son SHA1
git show
— sans préciser le affiche les détails du dernier commit sur la branche.git show <SHA1_id>
— affiche le contenu de l'objet spécifié par son identifiant SHA1, par exemple, l'identifiant du blob, l'identifiant de l'arborescence, etc. Pour vérifier le type d'objet, utilisez la commande git cat-file -t
git show –pretty
— montre la sortie dans un joli format.
Vous pouvez fournir un format personnalisé :
git show --pretty = ‘format:Name: <format>’
Vous pouvez également utiliser l'un des formats court, complet, sur une ligne, moyen ou plus complet, par exemple :
git show --pretty= ‘medium’
— cela montrera à l'auteur, date, le titre et le message de validation complet
git show --abbrev-commit
— abbéreviate SHA1
cache de git
Pour changer de branche sans valider dans la branche actuelle, stockez les données non validées en toute sécurité
git stash
- enregistre le travail et l'index stategit stash save <message>
— donner un message pendant l'enregistrementgit stash list
— Afficher la liste du contenu stockégit stash apply
- valider les modifications stockées. Pour appliquer les modifications d'un stash spécifique, utilisez l'identifiant de l'index de stash avec applygit stash show
- afficher le contenu des fichiers cachésgit stash drop
- supprime la réserve la plus récente de la file d'attente
état de git
Affichez l'état du référentiel et du staging, c'est-à-dire l'état avant l'étape de validation. Vous pouvez utiliser cette commande après toute autre commande git, comme l'ajout, la mise à jour ou la suppression d'un fichier
git status
- affiche les modifications à valider ou les modifications non suivies (pas de mise en scène)
Par exemple, si vous ajoutez un fichier dans votre répertoire de travail nommé samplefile.txt et vérifiez s'il est ajouté, vous pouvez donner la commande ci-dessus. Il en résultera la sortie suivante :
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached …" to unstage)
new file: samplefile.txt
balise git
Des références amicales sont utilisées pour indiquerate jalons ou points de référence dans le code
git tag <tag_name>
— create une balise avec le prénomgit tag
— répertorier toutes les balises disponiblesgit tag show <tag_name>
— afficher les détails de la balise spécifiéegit tag -l “.*”
— affiche les balises qui correspondent au modèle ou aux caractères spécifiés
connard
Lance l'interface utilisateur git qui affiche le contenu, les validations, les différences complètes et d'autres détails dans un window
gitk
— ouvrez le dépôt git dans un window pour la visualisation
version git
Utilisez la commande git version pour vérifier la version de git que vous utilisez.
C:\Users\geekflare>git version
git version 2.38.0.windows.1
Mot de la fin
Cet article a répertorié les commandes git les plus couramment utilisées avec leurs options.
Ensuite, vous pouvez consulter le Analyseur d'informations d'identification GitHub.