Maison >outils de développement >git >Trente minutes pour démarrer avec Git (résumé)

Trente minutes pour démarrer avec Git (résumé)

WBOY
WBOYavant
2022-02-25 17:13:032922parcourir

Cet article vous apporte des connaissances pertinentes sur la prise en main de git, y compris la configuration de l'environnement, la théorie de base, la construction de projets, les opérations sur les fichiers et d'autres problèmes connexes. J'espère qu'il sera utile à tout le monde.

Trente minutes pour démarrer avec Git (résumé)

Apprentissage recommandé : "Tutoriel de démarrage de Git"

Contrôle de version

Qu'est-ce que le contrôle de version (itération de version, nouvelle version ! Gestionnaire de versions)

Le contrôle de version (Contrôle de révision) est un It est une technologie de génie logiciel utilisée pendant le processus de développement pour gérer l'historique des modifications apportées aux fichiers, répertoires ou projets, pour faciliter la visualisation de l'historique des modifications et pour sauvegarder et restaurer les versions précédentes.

  • Réalisez un développement collaboratif multi-personnes dans toutes les régions
  • Suivez et enregistrez l'historique d'un ou plusieurs fichiers
  • Organisez et protégez votre code source et vos documents
  • Charge de travail statistique
  • Développement parallèle pour améliorer l'efficacité du développement
  • Suivi Enregistrez le tout le processus de développement logiciel
  • Réduisez la charge des développeurs, gagnez du temps et réduisez les erreurs perçues

En termes simples, il s'agit d'une technologie utilisée pour gérer des projets de développement collaboratifs multi-personnes.

Il n'y a pas de contrôle de version ni de contrôle de version et la province ne gère pas correctement les processus. De nombreux problèmes seront introduits dans le processus de développement logiciel, tels que la cohérence du code logiciel, la redondance du contenu logiciel, la nature transactionnelle du processus logiciel et. problèmes dans le processus de développement logiciel. Problèmes tels que la concurrence, la sécurité du code source du logiciel et l’intégration logicielle.

Outils de contrôle de version courants

Les contrôleurs de version courants sont les suivants :

  • Git
  • SVN (Subversion)
  • CVS (Concurrent Visual System)
  • VSS (Micorosoft Visual SourceSafe)
  • TFS (Team Foundation Server)
  • Visual Studio Online

Les produits de contrôle de version (Perforce, Rational ClearCase, RCS (GNU Revision Control System), Serena Dimention, SVK, BitKeeper, Monotone, Bazaar, Mercurial, SourceGear Vault) sont désormais les plus influents Et les les plus utilisés sont Git et SVN.

1. Contrôle de version local

Enregistrez chaque mise à jour du fichier Vous pouvez prendre un instantané de chaque version ou enregistrer des fichiers de correctifs, adaptés à un usage personnel, tel que RCS.

2. Contrôle de version centralisé SVN

Toutes les données de version sont enregistrées sur le serveur et les développeurs collaboratifs peuvent mettre à jour ou télécharger leurs propres modifications de manière synchrone depuis le serveur.

Toutes les données de version sont stockées sur le serveur. Le local de l'utilisateur ne dispose que de la version qu'il a synchronisée auparavant. S'il n'est pas connecté à Internet, l'utilisateur ne peut pas voir la version historique, ni changer de version ni travailler. dans différentes branches. De plus, toutes les données sont stockées sur un seul serveur. Il existe un risque élevé que ce serveur soit endommagé et que toutes les données soient perdues. Bien entendu, il peut être sauvegardé régulièrement. Produits représentatifs : SVN, CVS, Vss.

3. Contrôle de version distribué GIT

Chaque branche a tout le code.

Tous les entrepôts d'informations de version sont synchronisés avec chaque utilisateur local, de sorte que tout l'historique des versions puisse être consulté localement et soumis localement hors ligne. Étant donné que chaque utilisateur enregistre toutes les données de version, tant qu'il n'y a pas de problème avec l'appareil d'un utilisateur, toutes les données peuvent être restaurées, mais cela augmente l'occupation de l'espace de stockage local.

Il n'y aura aucune incapacité de travailler en raison de dommages au serveur ou de problèmes de réseau.

4. La principale différence entre Git et SVN

SVN est un système de contrôle de version centralisé. La bibliothèque de versions est centralisée sur le serveur central. Lorsque vous travaillez, vous utilisez votre propre ordinateur, vous devez donc d'abord démarrer depuis le serveur central. serveur. Le serveur obtient la dernière version et fonctionne ensuite. Une fois le travail terminé, il doit transférer son travail de la nuit dernière vers le serveur central. Un système de contrôle de version centralisé doit être connecté à Internet pour fonctionner et nécessite une bande passante réseau élevée.

GIT est un système de contrôle de versions distribué sans serveur central. Chaque ordinateur est une bibliothèque de versions complète. Il n'est pas nécessaire de se connecter à Internet pour travailler, car les versions sont toutes sur l'ordinateur. La méthode de collaboration est la suivante : par exemple, si vous modifiez le fichier A sur votre ordinateur et que quelqu'un d'autre modifie également le fichier A sur votre ordinateur, il vous suffit alors de transmettre vos modifications l'un à l'autre et vous pourrez vous voir. été modifié. Git peut voir directement quel code et quels fichiers ont été mis à jour.

Git est actuellement le système de contrôle de version distribué le plus avancé au monde.

Configuration de l'environnement Git

Ouvrez le site officiel de Git https://git-scm.com et téléchargez la version de git correspondant au système d'exploitation.

Si tout est lent à télécharger, vous pouvez trouver des miroirs !

Le téléchargement du site officiel est trop lent, vous pouvez utiliser le téléchargement du miroir Taobao : http://npm.taobao.org/mirrors/git-for-windows/

Démarrer Git

Git Bash : style Unix et Linux ligne de commande, la plus utilisée et recommandée

Git CMD : ligne de commande de style Windows

Git GUI : Git avec interface graphique, non recommandé pour les débutants, essayez de vous familiariser avec les commandes courantes

Apprentissage de base des commandes Linux

cd : changer de répertoire

cd.. Retourner au répertoire précédent et directement cd dans le répertoire par défaut

pwd : Afficher le chemin du répertoire courant

ls(ll) : Tous les fichiers du répertoire courant sont répertoriés, mais ll les répertorie le contenu est détaillé

touch : créez un nouveau fichier tel que touch index.js et il créera un nouveau fichier index.js dans le répertoire actuel

rm : supprimez un fichier

mkdir : créez un nouveau répertoire, c'est-à-dire créer un nouveau dossier.

rm-r : Supprimer un dossier, rm-r src supprime le répertoire src

mv déplace les fichiers

reset réinitialise le terminal, efface l'écran

clear efface l'écran

historique Afficher l'historique des commandes

aide help

exit Exit

# signifie commenter

Configuration Git

Tous les fichiers de configuration sont en fait enregistrés localement

Définissez le nom d'utilisateur et l'e-mail :

git config --global user.name "name"

git config -- utilisateur global. email 22222@qq.com

git config --system --list interroge la configuration configurée par le système

git config --global --list interroge la configuration globale

Théorie de base de Git

Git a trois zones de travail locales : répertoire de travail (Working Directory), zone de préparation (Stage, Index), bibliothèque de ressources (Repository ou Git Directory). Si vous ajoutez l'entrepôt git distant (Remote Directory), il peut être divisé en quatre zones de travail. La relation de conversion entre les fichiers entre ces quatre zones est la suivante :

  • Espace de travail : espace de travail, où vous stockez habituellement le code du projet
  • Index/Stage : zone de préparation : utilisée pour stocker temporairement vos modifications. En fait, il s'agit simplement d'un fichier qui enregistre les informations sur le point d'être soumises à la liste de fichiers.
  • Dépôt : la zone de l'entrepôt (ou l'entrepôt local) est l'endroit où les données sont stockées en toute sécurité. Elle contient les données que vous avez soumises à toutes les versions. HEAD pointe vers la dernière version mise dans l’entrepôt.
  • À distance : un entrepôt distant, un serveur qui héberge du code, peut simplement être considéré comme un ordinateur dans votre équipe de projet pour l'échange de données à distance.

Pour être précis, les trois zones locales doivent être les versions pointées par HEAD dans l'entrepôt git :

  • Annuaire : un annuaire géré par Git, c'est-à-dire un entrepôt, comprenant notre espace de travail et la gestion Git espace.
  • WorkSpace : Répertoires et fichiers qui nécessitent un contrôle de version via Git. Ces répertoires et fichiers constituent l'espace de travail
  • .git : Répertoire qui stocke les informations de gestion de Git.
  • Index/Stage : Zone de préparation, ou zone de mise à jour à soumettre. Avant de la soumettre au dépôt, nous pouvons mettre toutes les mises à jour dans la zone de préparation.
  • Local Repo : dépôt local, un dépôt stocké localement ; HEAD ne sera que la branche de développement actuelle.
  • Stash : Caché, il s'agit d'une pile de sauvegarde de l'état de travail utilisée pour sauvegarder/restaurer l'état temporaire dans WorkSpace.

Workflow

Le workflow de git est généralement le suivant :

1. Ajoutez et modifiez des fichiers dans le répertoire de travail

2. Placez les fichiers qui nécessitent une gestion de version dans la zone de préparation ; Soumettez les fichiers de la zone de préparation au référentiel Git.

Par conséquent, les fichiers gérés par git ont trois états : modifié, intermédiaire et validé.

Construction de projet Git

Création d'un répertoire de travail et d'instructions communes

Le répertoire de travail (WorkSpace) est généralement le dossier que vous souhaitez que Git vous aide à gérer. Il peut s'agir du répertoire de votre projet ou d'un répertoire vide. Il est recommandé de ne pas utiliser de chinois.

N'oubliez pas les 6 commandes de l'image ci-dessous pour une utilisation quotidienne :

Construction d'un entrepôt local :

Il existe deux façons de créer un entrepôt local : l'une consiste à créer un tout nouvel entrepôt et l'autre est de cloner un entrepôt distant.

1. Pour créer un nouvel entrepôt, vous devez utiliser le répertoire racine du projet géré par GIT pour exécuter :

#在当前目录新建一个Git代码库
$ git init初始化

2 Après l'exécution, vous pouvez voir qu'il n'y a qu'un répertoire .git supplémentaire dans le répertoire du projet, et toutes les informations sur les versions, etc. se trouvent dans ce répertoire.

Cloner le référentiel distant

1. Une autre façon consiste à cloner le répertoire distant, car il reflète complètement le pantalon du serveur distant sur celui local !

#可镂一个项目和它的整个代码历史(版本信息)
$ git clone [url]

2. Allez sur gitee ou github pour cloner un test

Opération de fichier Git

Quatre 4 statuts de fichiers

Le contrôle de version est le contrôle de version des fichiers Pour modifier, soumettre et autres opérations sur les fichiers, vous. doit d'abord savoir Quel est l'état actuel du dossier ? Sinon, vous avez peut-être soumis un fichier que vous ne souhaitez pas encore soumettre, ou le fichier que vous souhaitez soumettre n'a pas été soumis.

  • Non suivi : non suivi, ce fichier est dans le dossier, mais n'est pas ajouté à la bibliothèque git, ne participe pas au contrôle de version et est mis en scène via git add.
  • Non modifié : le fichier a été stocké dans la base de données et n'a pas été modifié. Autrement dit, le contenu de l'instantané du fichier dans le référentiel est exactement le même que celui du dossier. Ce type de fichier a deux emplacements. , il devient modifié. Si vous utilisez git rm pour supprimer le référentiel, il deviendra un fichier non suivi
  • Modifié : le fichier a été modifié, vient d'être modifié et aucune autre opération n'a été effectuée. Ce fichier a également deux emplacements. via git add. Utiliser git checkout supprimera les modifications et reviendra à l'état non modifié. Cette extraction git supprimera le fichier de la bibliothèque et écrasera les modifications actuelles !
  • Staged : état temporaire. Exécutez git commit pour synchroniser les modifications apportées à la bibliothèque. À ce stade, les fichiers de la bibliothèque et les fichiers locaux redeviennent cohérents et les fichiers sont dans l'état Non modifié. Exécutez git reset HEAD filename pour annuler le stockage temporaire et l'état du fichier passe à Modifié.

Vérifier l'état des fichiers

On dit que les fichiers ont quatre statuts. Vous pouvez vérifier l'état des fichiers via la commande suivante :

#查看执行文件状态
git status [filename]
#查看所有文件状态
git status
#添加所有文件到暂存区
git add .
#提交暂存区中的内容到本地仓库 -m提交信息
git commit -m "注释内容"

Ignorer les fichiers

Parfois, nous ne voulons pas mettre certains fichiers. dans le contrôle de version. Par exemple, les fichiers de base de données, les fichiers temporaires, les fichiers de conception, etc.

Créez un fichier ".gitignore" dans le répertoire personnel. Ce fichier a les règles suivantes :

  1. Ignorez les lignes vides dans le ou les fichiers. commençant par un signe dièse (#) sera ignoré par négligence.
  2. Des caractères génériques Linux peuvent être utilisés. Par exemple : l'astérisque (*) représente n'importe quel nombre de caractères, bonjour (?) représente un caractère, les crochets ([abc]) représentent une plage de caractères facultative, les accolades ({string1, string2}) représentent des chaînes facultatives, etc.
  3. S'il y a un point d'exclamation (!) au début du nom, il indique une règle d'exception et ne sera pas ignoré.
  4. Si le nom est précédé d'un séparateur de chemin (/), cela signifie que les fichiers à ignorer se trouvent dans ce répertoire, et que les fichiers des sous-répertoires ne sont pas ignorés.
  5. Si la dernière fin du nom est un séparateur de chemin (/), cela signifie que le sous-répertoire du nom dans ce répertoire doit être ignoré, pas le fichier (le fichier par défaut et les répertoires suivants sont ignorés).
#为注释
*.txt        #忽略所有 .txt结尾的文件,这样的话上传就不会被选中
!lib.txt    #但lib.txt除外
/temp        #进忽略项目根目录下的TODO文件,不包括其他目录temp
build/       #忽略build/目录下的所有文件
doc/*.txt    #忽略doc/notes.txt 但不包括 doc/server/arch.txt

.gitignore le contenu du fichier

#java
*.class
*.log
*.lock

#Package Files #
*.jar
*.war
*.ear
target/

# idea
.idea/
*.iml

*velocity.log*

### STS ###
.apt_generated
.factorypath
.springBeans

### IntelliJ IDEA ###
*.iml
*.ipr
*.iws
.idea
.classpath
.project
.settings/
bin/

*.log
tmp/

#rebel
*rebel.xml*

Utilisez le nuage de code

  1. pour vous inscrire et vous connecter au nuage de code, améliorer les informations personnelles
  2. Définissez la clé publique Baoding SSH locale pour obtenir une connexion sans mot de passe !
# 进入 C:\Userss\Administrator\.ssh 目录
# 生成公钥
ssh-keygen -t rsa

3. Ajoutez la clé publique d'informations de clé publique au compte code cloud !

4. Utilisez Code Cloud pour créer votre propre entrepôt

Intégrez Git dans IDEA

1 Créez un nouveau projet et liez git

Copiez le répertoire de fichiers git distant au projet ou créez-le dans le répertoire git avec le même. name ( Le fichier git est un fichier git cloné à distance)

Après l'actualisation, l'idée apparaîtra

2 Modifiez le fichier et utilisez IDEA pour faire fonctionner git

  • Ajouter à la zone de préparation git add .
  • commit commit git commit
  • push vers l'entrepôt distant git push

3. Soumettre le test

Git branch

Instructions communes dans git branch

#列出所有本地分支
git branch
#列出所有远程分支
git branch -r
#新建一个分支,但仍然停留在当前分支
git branch [branch-name]
#新建一个分支,并切换到该分支
git checkout -b [branch]
#合并指定分支到当前分支
git merge [branch]
#删除分支
git branch -d [branch-name]
#删除远程分支
git push origin --delete [branch-name]
git branch -dr [remote/branch]

Apprentissage recommandé : "Git Tutorial"

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:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer