Tutoriel de dém...login
Tutoriel de démarrage rapide Git
auteur:php.cn  temps de mise à jour:2022-04-11 13:44:34

Entrepôt distant Git


Git n'a pas de serveur central comme SVN.

Les commandes Git que nous utilisons actuellement sont toutes exécutées localement, si vous souhaitez partager votre code ou collaborer avec d'autres développeurs via Git. Vous devez ensuite placer les données sur un serveur auquel d'autres développeurs peuvent se connecter.

Cet exemple utilise Github comme entrepôt distant. Vous pouvez d'abord lire notre Tutoriel concis sur Github.


Ajouter un référentiel distant

Pour ajouter un nouveau référentiel distant, vous pouvez spécifier un nom simple pour référence future. Le format de commande est le suivant :

git remote add [shortname] [url]
<. 🎜 >Cet exemple utilise Github comme entrepôt distant. Si vous n'avez pas Github, vous pouvez vous inscrire sur le site officiel

https://github.com/.


Étant donné que le transfert entre votre dépôt Git local et le dépôt GitHub est chiffré via SSH, nous devons configurer les informations d'authentification :

Utilisez la commande suivante Générer Clé SSH :

$ ssh-keygen -t rsa -C "youremail@example.com"

Remplacez votre_email@votreemail.com par l'adresse e-mail que vous avez enregistrée sur github. Il vous sera ensuite demandé de confirmer le chemin et de saisir un mot de passe. Nous utilisons simplement celui par défaut et appuyons sur Entrée. . En cas de succès, un dossier .ssh sera généré sous ~/, entrez, ouvrez id_rsa.pub et copiez la clé à l'intérieur.

Retournez sur github, entrez dans les paramètres du compte, sélectionnez Clés SSH sur la gauche, Ajouter une clé SSH, remplissez le titre comme vous le souhaitez et collez la clé générée sur votre ordinateur.

Afin de vérifier le succès, entrez la commande suivante :

$ ssh -T git@github.com
Hi tianqixin! You've successfully authenticated, but GitHub does not provide shell access.

La commande suivante montre que nous nous sommes connectés avec succès à Github.

Après vous être connecté, cliquez sur « Nouveau référentiel » comme indiqué ci-dessous :

Remplissez ensuite w3cschool.cc (nom de l'entrepôt distant) dans le nom du référentiel. , conservez les autres paramètres par défaut, cliquez sur le bouton "Créer un référentiel", et un nouveau référentiel Git est créé avec succès :

Une fois la création réussie, les informations suivantes s'affichent :

Les informations ci-dessus nous indiquent que nous pouvons cloner un nouvel entrepôt à partir de cet entrepôt, ou pousser le contenu de l'entrepôt local vers l'entrepôt GitHub.

Maintenant, nous suivons les invites de GitHub et exécutons la commande sous le référentiel local :

$ ls
README
w3cschoolphp中文网测试.txt
test.txt
$ git remote add origin git@github.com:tianqixin/w3cschool.cc.git
$ git push -u origin master
Counting objects: 21, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (15/15), done.
Writing objects: 100% (21/21), 1.73 KiB | 0 bytes/s, done.
Total 21 (delta 4), reused 0 (delta 0)
To git@github.com:tianqixin/w3cschool.cc.git
 * [new branch]      master -> master
Branch master set up to track remote branch master from origin.

Veuillez copier les commandes suivantes en fonction de l'endroit où vous avez réussi à créer un nouveau référentiel sur Github, et non en fonction de ce que j'ai fournie., car nos noms d'utilisateur Github sont différents et les noms d'entrepôt sont également différents.

Ensuite, nous retournons à l'entrepôt créé par Github, et vous pouvez voir que le fichier a été téléchargé sur Github :


Afficher la bibliothèque distante actuelle

Pour voir quels référentiels distants sont actuellement configurés, vous pouvez utiliser la commande :

git remote
$ git remote
origin
$ git remote -v
origin	git@github.com:tianqixin/w3cschool.cc.git (fetch)
origin	git@github.com:tianqixin/w3cschool.cc.git (push)

Ajoutez le paramètre -v lors de l'exécution, et vous pouvez également voir l'adresse de lien réelle de chaque alias.


Extraire le référentiel distant

Git dispose de deux commandes pour extraire les mises à jour du référentiel distant.

1. Téléchargez de nouvelles branches et données depuis l'entrepôt distant :

git fetch

Après avoir exécuté cette commande, vous devez exécuter git merge de la branche distante vers votre branche.

2. Extrayez les données du référentiel distant et essayez de les fusionner dans la branche actuelle :

git pull

Cette commande consiste à exécuter git fetch suivi de git merge pour déplacer la branche distante vers n'importe quelle branche. vous êtes dessus.

En supposant que vous ayez configuré un entrepôt distant et que vous souhaitiez récupérer les données mises à jour, vous pouvez d'abord exécuter git fetch [alias] Dites à Git de récupérer les données dont il dispose et que vous n'avez pas, puis vous pourrez faire git merge [alias]/[branch] pour fusionner toutes les mises à jour sur le serveur (en supposant que quelqu'un soit poussé vers le serveur à ce point) dans votre branche actuelle.

Ensuite, nous cliquons sur "w3cschoolphp Chinese network test.txt" sur Github et le modifions en ligne. Ensuite, nous le mettons à jour et le modifions localement.

$ git fetch origin
Warning: Permanently added the RSA host key for IP address '192.30.252.128' to the list of known hosts.
remote: Counting objects: 3, done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
From github.com:tianqixin/w3cschool.cc
   7d2081c..f5f3dd5  master     -> origin/master

Les informations ci-dessus "7d2081c..f5f3dd5 master -> origin/master" indiquent que la branche master a été mise à jour. Nous pouvons utiliser la commande suivante pour synchroniser la mise à jour avec le local :

$ git merge origin/master
Updating 7d2081c..f5f3dd5
Fast-forward
 "w3cschool074107651703653075.txt" | 1 +
 1 file changed, 1 insertion(+)
.

Pousser vers un entrepôt distant

Poussez votre nouvelle succursale et vos données vers une commande d'entrepôt distant :

git push [alias] [branch]

La commande ci-dessus poussera votre branche [branche] vers [alias] sur la branche [branche] de l'entrepôt distant, les exemples sont les suivants.

$ git merge origin/master
Updating 7d2081c..f5f3dd5
Fast-forward
 "w3cschool074107651703653075.txt" | 1 +
 1 file changed, 1 insertion(+)
bogon:w3cschoolcc tianqixin$ vim w3cschoolphp中文网测试.txt 
bogon:w3cschoolcc tianqixin$ git push origin master
Everything up-to-date

Supprimer le référentiel distant

Pour supprimer le référentiel distant, vous pouvez utiliser la commande :

git remote rm [别名]
$ git remote -v
origin	git@github.com:tianqixin/w3cschool.cc.git (fetch)
origin	git@github.com:tianqixin/w3cschool.cc.git (push)
$ git remote add origin2 git@github.com:tianqixin/w3cschool.cc.git
$ git remote -v
origin	git@github.com:tianqixin/w3cschool.cc.git (fetch)
origin	git@github.com:tianqixin/w3cschool.cc.git (push)
origin2	git@github.com:tianqixin/w3cschool.cc.git (fetch)
origin2	git@github.com:tianqixin/w3cschool.cc.git (push)
$ git remote rm origin2
$ git remote -v
origin	git@github.com:tianqixin/w3cschool.cc.git (fetch)
origin	git@github.com:tianqixin/w3cschool.cc.git (push)

Site Web PHP chinois