Maison  >  Article  >  outils de développement  >  Outil de contrôle de version Git - Warehouse Management.md

Outil de contrôle de version Git - Warehouse Management.md

齐天大圣
齐天大圣original
2020-06-16 15:41:052671parcourir

Aujourd’hui, parlons de la gestion d’entrepôt Git sous deux aspects. Créez un entrepôt et suivez les modifications apportées aux fichiers dans l'entrepôt.

Obtenir le dépôt Git

Il existe deux façons d'obtenir le dépôt Git :

  • Changer le local inutilisé Le répertoire initialisé est utilisé comme répertoire d'entrepôt

  • Cloner un projet Git existant à partir de l'hôte distant

Ce qui suit démontrera ces deux méthodes :

# mkdir learngit
# cd learngit/
# git init
Initialized empty Git repository in /root/learngit/.git

De cette façon, un entrepôt local est établi. Voyons ensuite comment cloner le référentiel à distance.

# mkdir learngit2
# cd learngit2
# git clone git@github.com:*****/blog.git  learngit2

Cette commande signifie cloner le référentiel Git à partir de la télécommande et changer le répertoire en learngit2. Par défaut, sans ce paramètre, le nom du répertoire est blog.

Suivez chaque mise à jour de l'entrepôt

Tout d'abord, nous devons parler de l'état du dossier d'un point de vue large, il existe deux statuts du fichier :

  • Non suivi

  • Suivi

Le suivi. le statut est à nouveau divisé en non modifié, modifié et temporairement enregistré. Un fichier non suivi signifie que le référentiel ne suit pas le fichier.

Outil de contrôle de version Git - Warehouse Management.md

Ci-dessous, nous démontrerons l'état de ces fichiers.

Tout d'abord, créons un nouveau fichier dans le répertoire du projet

# touch README.md

Ensuite, vérifions l'état du fichier. git status peut répertorier l'état des fichiers. Si aucun fichier n'est ajouté, cela signifie tous les répertorier.

# git status README.md 
# On branch master
#
# Initial commit
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
# README.md
nothing added to commit but untracked files present (use "git add" to track)

Comme vous pouvez le voir, le statut de README.md n'est pas suivi. Maintenant, créons un autre fichier et ajoutons-le à la zone de transit, puis examinons l'état du fichier.

# cat > index.php <<eof
> <?php
> phpinfo();
> eof
# git add index.php
# git status index.php 
# On branch master
#
# Initial commit
#
# Changes to be committed:
#   (use "git rm --cached <file>..." to unstage)
#
# new file:   index.php
#

Tant qu'un fichier apparaît sous Modifications à valider, cela signifie que le fichier est dans un état temporaire. Ensuite, modifiez à nouveau le fichier index.php et voyez ce qui se passe.

# git status index.php 
# On branch master
#
# Initial commit
#
# Changes to be committed:
#   (use "git rm --cached <file>..." to unstage)
#
# new file:   index.php
#
# Changes not staged for commit:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified:   index.php
#

Avez-vous vu que le fichier index.php apparaît à la fois dans la zone de transit et dans la zone de non-staging ? Attention à tous ! Cette situation se produit fréquemment.

git add

Les fonctions de cette commande sont de suivre les nouveaux fichiers, de soumettre les fichiers modifiés à la zone de préparation et de fusionner les fichiers temporels avec des conflits sont marqués d’un statut résolu.

Afficher les modifications

Comment afficher les modifications apportées aux fichiers dans l'espace de travail et la zone de préparation. Utilisez simplement git diff directement.

# git diff 1.txt 
diff --git a/1.txt b/1.txt
index 3b18e51..a042389 100644
--- a/1.txt
+++ b/1.txt
@@ -1 +1 @@
-hello world
+hello world!

Alors comment vérifier les modifications dans la zone de préparation et dans l'entrepôt. À ce stade, vous devez ajouter l’option --staged.

# git diff --staged 1.txt 
diff --git a/1.txt b/1.txt
new file mode 100644
index 0000000..3b18e51
--- /dev/null
+++ b/1.txt
@@ -0,0 +1 @@
+hello world

Pour résumer

  • Pour visualiser les modifications des fichiers dans l'espace de travail et la zone de préparation, utilisez git diff [nom du fichier]

  •  Affichez les modifications apportées à la zone de préparation et aux fichiers de l'entrepôt, utilisez git diff --staged [nom du fichier]

pour soumettre les mises à jour

Nous utilisons git commit pour soumettre les mises à jour et soumettre le contenu de la zone de préparation à l'entrepôt.

En général, nous aimons utiliser l'option -m pour écrire ensemble les informations de mise à jour soumises cette fois. Comme suit :

# git commit -m &#39;first commit.add a txt file&#39;

Si vous n'ajoutez pas l'option -m, un éditeur apparaîtra, vous permettant de soumettre des informations mises à jour dans l'éditeur.

Si vous mettez à jour beaucoup de contenu et que vous ne parvenez pas à le terminer en une ou deux phrases, il est recommandé d'utiliser cette méthode.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn