Latest web development tutorials

dépôt distant Git

Git est pas qu'il y ait un serveur central comme SVN.

Nous utilisons actuellement à Git commandes sont exécutées localement, Git si vous voulez partager votre code ou en coopération avec d'autres développeurs. Vous avez besoin de mettre les données sur un serveur peut se connecter à d'autres développeurs.

Cet exemple utilise le dépôt Github comme une télécommande, vous pouvez lire notre premier tutoriel simple Github.


Ajout de bibliothèques éloignées

Pour ajouter un nouveau référentiel distant, vous pouvez spécifier un nom simple, pour référence ultérieure, le format de commande est la suivante:

git remote add [shortname] [url]

Dans cet exemple, un dépôt distant Github comme un exemple, si vous ne pouvez pas GitHub site officiel https://github.com/ enregistré.

Depuis la transmission de votre dépôt Git local et GitHub référentiel est via le cryptage SSH, donc nous avons besoin de configurer les informations d'authentification:

Utilisez la commande suivante pour générer des clés SSH:

$ ssh-keygen -t rsa -C "[email protected]"

[email protected] retour à votre boîte aux lettres inscrit sur github, alors il vous sera demandé de confirmer le chemin d'accès et le mot de passe, que nous utilisons le chemin par défaut pour entrer dans la ligne. Le succès va générer .ssh dossier ~ / sous, à l'intérieur, id_rsa.pub ouvert, copier l'intérieur de la clé.

Retour sur github, entrez les paramètres du compte (configuration de compte), les sélectionnez clés SSH gauche, Ajouter clés SSH, il suffit de remplir le titre collé généré sur la clé de votre ordinateur.

Pour vérifier la réussite, entrez la commande suivante:

$ ssh -T [email protected]
Hi tianqixin! You've successfully authenticated, but GitHub does not provide shell access.

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

Après la connexion et cliquez sur "Nouveau référentiel" comme indiqué ci-dessous:

Après le nom du référentiel w3cschool.cc rempli (nom à distance référentiel), d'autres gardent les paramètres par défaut, cliquez sur le bouton "Créer un référentiel", nous avons créé avec succès un nouveau dépôt Git:

Une fois créé, l'information suivante est affichée:

Les informations ci-dessus, nous pouvons dire à partir de ce référentiel nouvel entrepôt clone, le contenu peut être poussé à référentiel local GitHub référentiel.

Maintenant, suivez les invites à GitHub, et exécutez la commande dans un entrepôt local:

$ ls
README
w3cschool本教程测试.txt
test.txt
$ git remote add origin [email protected]: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 [email protected]:tianqixin/w3cschool.cc.git
 * [new branch]      master -> master
Branch master set up to track remote branch master from origin.

Les commandes suivantes selon votre copie locale à Github créé avec succès un nouvel entrepôt, plutôt que de me commander, parce que notre nom d'utilisateur Github est pas la même chose, pas le même nom du référentiel.

Ensuite, nous créons un retour Github référentiel, vous pouvez voir les fichiers ont été téléchargés à Github:


Vérifiez la bibliothèque à distance en cours

Pour voir ce que le dépôt distant actuel est disposé, vous pouvez utiliser la commande:

git remote
$ git remote
origin
$ git remote -v
origin	[email protected]:tianqixin/w3cschool.cc.git (fetch)
origin	[email protected]:tianqixin/w3cschool.cc.git (push)

Avec le paramètre -v, vous pouvez également voir l'adresse du lien réel pour chaque alias lors de son exécution.


Extraire un dépôt distant

Git a deux commandes utilisées pour extraire les mises à jour du référentiel à distance.

1. Téléchargez la nouvelle branche avec les données à partir d'un référentiel distant:

git fetch

La nécessité d'effectuer après avoir été run git merge une branche à distance dans votre succursale est située.

2, extraire des données à partir d'un entrepôt à distance et essayer de se fondre dans la branche courante:

git pull

La commande est exécutée dans une branche dans votre git chercher immédiatement après la mise en œuvre de la branche à distance pour la fusion de git.

Supposons que vous avez configuré un référentiel distant, et que vous voulez extraire les données mises à jour, vous pouvez exécuter git fetch [alias] dire Git pour l' obtenir , vous ne disposez pas des données, puis vous pouvez exécuter git fusionner [alias] / [première branche ] pour toutes les mises à jour sur le serveur ( en supposant que cette fois - ci a été poussé vers le serveur) dans votre branche courante.

Ensuite, on clique sur ".txt test tutoriel w3cschool" sur Github et de le modifier en ligne. Une fois que nous avons mis à jour les modifications 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 maître -> origin / master" instructions maître de la branche ont été mises à jour, nous pouvons utiliser la commande suivante pour mettre à jour synchronisée à une locale:

$ git merge origin/master
Updating 7d2081c..f5f3dd5
Fast-forward
 "w3cschool\350\217\234\351\270\237\346\225\231\347\250\213\346\265\213\350\257\225.txt" | 1 +
 1 file changed, 1 insertion(+)

Pousser à un dépôt distant

Poussez votre nouvelle branche et l'entrepôt de données à une extrémité distale de la commande:

git push [alias] [branch]

La commande ci-dessus vous [branche] branche poussée à devenir [branche] branche, exemples [alias] dépôt distant est la suivante.

$ git merge origin/master
Updating 7d2081c..f5f3dd5
Fast-forward
 "w3cschool\350\217\234\351\270\237\346\225\231\347\250\213\346\265\213\350\257\225.txt" | 1 +
 1 file changed, 1 insertion(+)
bogon:w3cschoolcc tianqixin$ vim w3cschool本教程测试.txt 
bogon:w3cschoolcc tianqixin$ git push origin master
Everything up-to-date

Suppression d'un dépôt distant

Suppression de référentiel à distance, vous pouvez utiliser la commande:

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