Cet article a été parrainé par Bitbucket. Merci de soutenir les sponsors qui rendent le point de point possible.
Apprenez les bases de Git avec ce tutoriel sur le thème de l'espace.
Votre mission est d'apprendre les cordes de Git en complétant le tutoriel et en retrouvant toutes les stations spatiales de votre équipe. Commandes couvertes dans ce tutoriel:
En tant que nouvel administrateur de la station spatiale Bitbucket, vous devez être organisé. Lorsque vous créez des fichiers pour votre station spatiale, vous voudrez les garder au même endroit et partageables avec des coéquipiers, peu importe où ils se trouvent dans l'univers. Avec Bitbucket, cela signifie tout ajouter à un référentiel. Créons-en un!
Initialement, le référentiel que vous créez dans Bitbucket va être vide sans aucun code. Ce n'est pas grave car vous commencerez bientôt à y ajouter des fichiers. Ce référentiel Bitbucket sera le référentiel central de vos fichiers, ce qui signifie que d'autres peuvent accéder à ce référentiel si vous leur donnez la permission. Après avoir créé un référentiel, vous copiez une version sur votre système local - que vous pouvez le mettre à jour à partir d'un référentiel, puis transférer ces modifications vers l'autre.
Faites ce qui suit pour créer votre référentiel:
Le système affiche la page Créer une nouvelle page de référentiel. Prenez le temps de revoir le contenu de la boîte de dialogue. À l'exception du type de référentiel, tout ce que vous entrez sur cette page, vous pouvez modifier plus tard.
Prenez le temps d'explorer le référentiel que vous venez de créer. Vous devriez être sur la page Présentation du référentiel:
Cliquez sur les éléments du menu de navigation pour voir ce qui est derrière chacun. Pour afficher les raccourcis disponibles pour naviguer dans ces éléments, appuyez sur le? clé sur votre clavier.
Lorsque vous cliquez sur l'option Commits dans la barre de menu, vous constatez que vous n'avez pas de validation car vous n'avez créé aucun contenu pour votre référentiel. Votre référentiel est privé et vous n'avez invité personne au référentiel, donc la seule personne qui peut créer ou modifier le contenu du référentiel en ce moment est vous, le propriétaire du référentiel.
Maintenant que vous avez un endroit pour ajouter et partager vos fichiers de station spatiale, vous avez besoin d'un moyen d'y accéder à partir de votre système local. Pour configurer cela, vous souhaitez copier le référentiel Bitbucket sur votre système. Git fait référence à la copie d'un référentiel comme le «cloner». Lorsque vous clonez un référentiel, vous créez une connexion entre le serveur Bitbucket (que Git connaît sous forme d'origine) et votre système local.
Vous êtes sur le point d'utiliser tout un tas de commandes GIT et non GIT à partir d'un terminal. Si vous n'avez jamais utilisé la ligne de commande auparavant, découvrez où le trouver au cours de la ligne de commande.
Ouvrez un navigateur et une fenêtre de terminal depuis votre bureau. Après avoir ouvert la fenêtre du terminal, procédez comme suit:
$ cd ~
Comme vous utilisez plus Bitbucket, vous travaillerez probablement dans plusieurs référentiels. Pour cette raison, c'est une bonne idée de créer un répertoire pour contenir tous ces référentiels.
$ cd ~
$ mkdir repos
Le système affiche une boîte de dialogue de clones pop-up. Par défaut, la boîte de dialogue Clone définit le protocole sur HTTPS ou SSH, selon vos paramètres. Aux fins de ce tutoriel, ne modifiez pas votre protocole par défaut.
Si vous ressentez une erreur de mot de passe Windows:
$ cd ~/repos
$ git clone https://emmap1@bitbucket.org/emmap1/bitbucketstationlocations.git Cloning into 'bitbucketspacestation'... fatal: could not read Password for 'https://emmap1@bitbucket.org': No such file or directory
À ce stade, votre fenêtre de terminal doit ressembler à ceci:
$ git config --global core.askpass
Vous saviez déjà que votre référentiel était vide, non? N'oubliez pas que vous n'y avez pas encore ajouté de fichiers source.
$ cd ~/repos $ git clone https://emmap1@bitbucket.org/emmap1/bitbucketstationlocations.git Cloning into 'bitbucketstationlocations'... Password warning: You appear to have cloned an empty repository.
Félicitations! Vous avez cloné votre référentiel à votre système local.
Avec le référentiel sur votre système local, il est temps de se rendre au travail. Vous souhaitez commencer à garder une trace de tous vos emplacements de station spatiale. Pour ce faire, créons un fichier sur tous vos emplacements.
$ ls
$ cd ~/repos/bitbucketstationlocations/
Si la ligne de commande ne renvoie rien, cela signifie que vous avez créé le fichier correctement!
À ce stade, Git est conscient que vous avez créé un nouveau fichier, et vous verrez quelque chose comme ceci:
$ echo "Earth's Moon" >> locations.txt
Le fichier n'est pas suivi, ce qui signifie que Git voit un fichier ne faisant pas partie d'un commit précédent. La sortie d'état vous montre également l'étape suivante: l'ajout du fichier.
$ cd ~
La commande GIT ADD déplace les modifications du répertoire de travail à la zone de stadification GIT. La zone de mise en scène est l'endroit où vous préparez un instantané d'un ensemble de changements avant de les engager dans l'histoire officielle.
$ mkdir repos
Maintenant, vous pouvez voir que le nouveau fichier a été ajouté (mis en scène) et vous pouvez le commettre lorsque vous êtes prêt. La commande Git Status affiche l'état du répertoire de travail et l'instantané mis en scène.
$ cd ~/repos
Le commit Git prend le instantané mis en scène et le commet dans l'historique du projet. Combiné avec GIT ADD, ce processus définit le flux de travail de base pour tous les utilisateurs GIT.
Jusqu'à ce point, tout ce que vous avez fait est sur votre système local et invisible à votre référentiel Bitbucket jusqu'à ce que vous poussiez ces modifications.
en savoir un peu plus sur Git et les référentiels distants
Vous devriez voir quelque chose de similaire à la réponse suivante:
$ git clone https://emmap1@bitbucket.org/emmap1/bitbucketstationlocations.git Cloning into 'bitbucketspacestation'... fatal: could not read Password for 'https://emmap1@bitbucket.org': No such file or directory
Vos commits sont désormais sur le référentiel distant (Origin).
Vous devriez voir que vous avez un seul fichier source dans votre référentiel, le fichier locations.txt que vous venez d'ajouter.
Rappelez-vous à quoi ressemblait le référentiel lorsque vous l'avez créé pour la première fois? Cela semble probablement un peu différent maintenant.
Suivant sur votre liste d'activités d'administrateur de la station spatiale, vous avez besoin d'un fichier avec plus de détails sur vos emplacements. Comme vous n'avez pas beaucoup d'emplacements pour le moment, vous allez les ajouter directement de Bitbucket.
Pour ajouter votre nouveau fichier d'emplacements, procédez comme suit:
Une page pour la création du nouveau fichier s'ouvre, comme indiqué dans l'image suivante.
$ cd ~
$ mkdir repos
Vous avez maintenant un nouveau fichier dans Bitbucket! Vous êtes emmené sur une page avec des détails sur le commit, où vous pouvez voir le changement que vous venez de faire:
Si vous souhaitez voir une liste des validations que vous avez faites jusqu'à présent, cliquez sur le lien Commits sur le côté gauche.
Nous devons maintenant intégrer ce nouveau fichier dans votre référentiel local. Le processus est assez simple, essentiellement l'inverse de la poussée que vous avez utilisée pour obtenir le fichier Locations.txt dans Bitbucket.
Pour tirer le fichier dans votre référentiel local, procédez comme suit:
$ cd ~
$ mkdir repos
La commande git pull fusionne le fichier de votre référentiel distant (Bitbucket) dans votre référentiel local avec une seule commande.
Fantastique! Avec l'ajout des deux fichiers sur l'emplacement de votre station spatiale, vous avez effectué le flux de travail GIT de base (clone, ajouter, valider, pousser et tirer) entre Bitbucket et votre système local.
Être un administrateur de la station spatiale est livré avec certaines responsabilités. Parfois, vous devrez garder les informations verrouillées, en particulier lorsque vous tradiez de nouveaux emplacements dans le système solaire. Les branches d'apprentissage vous permettront de mettre à jour vos fichiers et de ne partager les informations que lorsque vous êtes prêt.
Les succursalessont les plus puissantes lorsque vous travaillez en équipe. Vous pouvez travailler sur votre propre partie d'un projet de votre propre succursale, extraire des mises à jour de Bitbucket, puis fusionner tout votre travail dans la branche principale lorsqu'elle est prête. Notre documentation comprend plus d'explications sur les raisons pour lesquelles vous voudriez utiliser des branches.
Une branche représente une ligne de développement indépendante pour votre référentiel. Considérez-le comme un tout nouveau répertoire de travail, une zone de mise en scène et l'histoire du projet. Avant de créer de nouvelles branches, vous commencez automatiquement avec la branche principale (appelée Master). Pour un exemple visuel, ce diagramme montre la branche maître et l'autre branche avec une mise à jour de correction de bug.
Créez une branche où vous pouvez ajouter des plans futurs pour la station spatiale que vous n'êtes pas prête à commettre. Lorsque vous êtes prêt à faire connaître ces plans à tous, vous pouvez fusionner les modifications dans votre référentiel Bitbucket, puis supprimer la branche non plus nécessaire.
Il est important de comprendre que les succursales ne sont que des pointeurs. Lorsque vous créez une branche, tout ce que GIT doit faire est de créer un nouveau pointeur - il ne crée pas un tout nouvel ensemble de fichiers ou de dossiers. Avant de commencer, votre référentiel ressemble à ceci:
Pour créer une branche, procédez comme suit:
$ cd ~
$ mkdir repos
Cette commande crée une branche mais ne vous change pas à cette branche, donc votre référentiel ressemble à ceci:
L'historique du référentiel reste inchangé. Tout ce que vous obtenez est un nouveau pointeur vers la branche actuelle. Pour commencer à travailler sur la nouvelle branche, vous devez consulter la succursale que vous souhaitez utiliser.
$ cd ~/repos
La commande GIT Cachée fonctionne main dans la main avec Git Branch. Parce que vous créez une branche pour travailler sur quelque chose de nouveau, chaque fois que vous créez une nouvelle branche (avec Git Branch), vous voulez vous assurer de le vérifier (avec la caisse GIT) si vous allez l'utiliser. Maintenant que vous avez vérifié la nouvelle branche, votre workflow Git ressemble à ceci:
$ git clone https://emmap1@bitbucket.org/emmap1/bitbucketstationlocations.git Cloning into 'bitbucketspacestation'... fatal: could not read Password for 'https://emmap1@bitbucket.org': No such file or directory
$ git config --global core.askpass
Remarquez la ligne des plans futurs de la branche? Si vous avez entré le statut GIT auparavant, la ligne était sur Branch Master parce que vous n'aviez que la branche maître. Avant de mettre en scène ou de commettre un changement, vérifiez toujours cette ligne pour vous assurer que la branche où vous souhaitez ajouter la modification est vérifiée.
$ cd ~/repos $ git clone https://emmap1@bitbucket.org/emmap1/bitbucketstationlocations.git Cloning into 'bitbucketstationlocations'... Password warning: You appear to have cloned an empty repository.
$ ls
Avec ce communiqué récent, votre référentiel ressemble à ceci:
Il est maintenant temps de fusionner le changement que vous venez de faire dans la branche maître.
Votre station spatiale augmente, et il est temps pour la cérémonie d'ouverture de votre emplacement Mars. Maintenant que vos plans futurs deviennent une réalité, vous pouvez fusionner votre succursale de plans futurs dans la branche principale de votre système local.
Parce que vous avez créé une seule branche et effectué un changement, utilisez la méthode de branche rapide pour fusionner. Vous pouvez faire une fusion rapide car vous avez un chemin linéaire de la pointe de la branche actuelle à la branche cible. Au lieu de fusionner «réellement» les branches, tout ce que Git doit faire pour intégrer les histoires est le mouvement (c'est-à-dire «rapidement avance») la pointe de la branche actuelle jusqu'à la pointe de la branche cible. Cela combine efficacement les histoires, car tous les engagements accessibles à partir de la branche cible sont désormais disponibles via celui actuel.
Ce flux de travail de branche est courant pour les branches de sujet de courte durée avec des changements plus petits et ne sont pas aussi courants pour les fonctionnalités à plus long terme.
Pour terminer une fusion rapide, faites ce qui suit:
$ cd ~
$ mkdir repos
$ cd ~/repos
$ git clone https://emmap1@bitbucket.org/emmap1/bitbucketstationlocations.git Cloning into 'bitbucketspacestation'... fatal: could not read Password for 'https://emmap1@bitbucket.org': No such file or directory
Vous avez essentiellement déplacé le pointeur de la branche maître vers l'avant vers la tête actuelle et votre référentiel ressemble à la fusion rapide vers l'avant ci-dessus.
$ git config --global core.askpass
Lorsque vous supprimez les plans futurs, vous pouvez toujours accéder à la branche depuis Master à l'aide d'un ID de validation. Par exemple, si vous souhaitez annuler les modifications ajoutées à partir des plans futurs, utilisez l'ID de validation que vous venez de revoir pour revenir à cette branche.
$ cd ~/repos $ git clone https://emmap1@bitbucket.org/emmap1/bitbucketstationlocations.git Cloning into 'bitbucketstationlocations'... Password warning: You appear to have cloned an empty repository.
Voici ce que vous avez fait jusqu'à présent:
Ensuite, nous devons repousser tout ce travail jusqu'à Bitbucket, votre référentiel distant.
Vous voulez permettre à tout le monde de voir l'emplacement de la nouvelle station spatiale. Pour ce faire, vous pouvez pousser l'état actuel de votre référentiel local à Bitbucket.
Ce diagramme montre ce qui se passe lorsque votre référentiel local a des modifications que le référentiel central n'a pas et que vous poussez ces modifications à Bitbucket.
Voici comment pousser votre modification au référentiel distant:
$ cd ~
Vous pouvez également voir que la ligne à gauche de la liste Commits a un chemin simple et ne montre aucune branche. C'est parce que la branche des plans futurs n'a jamais interagi avec le référentiel distant, seulement le changement que nous avons créé et commis.
Vous ne savez pas que vous pourrez vous souvenir de toutes les commandes GIT que vous venez d'apprendre? Aucun problème. Bookmark Notre page de commande GIT de base afin que vous puissiez vous référer en cas de besoin.
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!