Obtenir le coup de GitHub

Un projet est toujours plus amusant lorsque vous avez des amis qui travaillent avec vous, mais comment pouvez-vous le faire lorsque vous travaillez sur un projet de codage? Je garde mon clavier pour moi, merci.

Entrez GitHub. Avec ce service Web, vous pouvez partager vos projets de codage et collaborer facilement.!

Avertissement

Ce didacticiel supposera que vous connaissez Git, le meilleur logiciel de contrôle de version distribué qui soit. Déjà perdu? Ne vous inquiétez pas: lisez mon introduction à Git pour être opérationnel. Revenez ici et découvrez tout sur GitHub, le réseau social pour les développeurs!

Commencer

Bien sûr, vous aurez besoin d'un compte GitHub si vous voulez faire l'expérience de la bonté du codage social. Faisons-le maintenant. Rendez-vous sur le site Web GitHub et cliquez sur "Tarification et inscription" en haut..

Créer un compte

Selon vos besoins, vous pouvez utiliser plusieurs régimes. En ce moment, le compte "open source" gratuit est tout ce que nous voulons; alors cliquons "Inscription". C'est votre page d'inscription standard; entrez votre nom, votre adresse email et votre mot de passe. Vous aurez également besoin d'une clé publique SSH. J'ai expliqué comment en obtenir un dans mon article précédent:

Ouvrez votre terminal et tapez ceci: ssh-keygen -t rsa -C "[email protected]". L'option t attribue un type et l'option C ajoute un commentaire, généralement votre adresse électronique. On vous demandera ensuite où enregistrer la clé; Il suffit de frapper Entrée pour que le fichier soit sauvegardé à l'emplacement par défaut. Ensuite, entrez une phrase de passe à deux reprises. Maintenant vous avez une clé; donnons-le à GitHub.

Tout d’abord, récupérez votre clé dans le fichier; le terminal vous aura indiqué où la clé a été stockée; ouvrez le fichier, copiez la clé (veillez à ne pas ajouter de nouvelles lignes ni d'espaces).

Une fois que vous avez la clé, il suffit de la coller dans le champ approprié. Comme il est dit, vous n’avez pas à le faire maintenant; vous pouvez ajouter une clé plus tard. Puis cliquez sur le bouton pour accepter et vous inscrire.

Échauffement à l'interface

Lorsque vous vous connectez pour la première fois, vous verrez le tableau de bord. c'est quelque chose comme ça:

Dans le coin supérieur droit, vous pouvez voir une barre d’outils avec des options pour contrôler votre compte. Il existe également des liens pour vous déplacer dans GitHub, ainsi que le champ de recherche.

Le panneau principal propose un certain nombre d’actions; plus tard, il sera utilisé pour vous tenir au courant des projets qui vous intéressent. À droite de celui-ci, vos propres référentiels seront listés. N'oubliez pas que dans Git, les référentiels sont les conteneurs qui contiennent tout le code et l'historique liés à un projet..
Lorsque vous en avez la possibilité, parcourez les paramètres du compte, c’est tout ce que vous attendez, je ne le lirai donc pas; mais si vous envisagez d'être un githubber passionné, vous devriez probablement remplir votre profil et voir ce qu'il y a d'autre.

Tout est question de Repos

En réalité, le but de GitHub est de rendre les référentiels Git disponibles au monde entier. par conséquent, il convient de travailler avec des référentiels (ou repo, comme on les appelle souvent)..

La création d'un référentiel est assez simple. Sur le tableau de bord, cliquez sur "Nouveau référentiel" en haut de votre liste de référents (qui est actuellement vide)..

Trois zones de texte vous attendent ici; votre référentiel aura besoin d'un nom de projet, d'une description et de l'URL du site Web du projet. Si vous avez migré vers l’un des plans payants, vous pouvez choisir si celui-ci doit être accessible au public ou non. Lorsque vous avez terminé, cliquez sur "Créer un référentiel".
GitHub va maintenant vous donner des instructions pour connecter le référentiel GitHub à l'un de vos référentiels Git locaux. Si vous êtes familier avec Git, cela devrait être assez vieux pour vous. La partie importante est constituée des deux dernières lignes des "Prochaines étapes" ou "Repo Git existant?"

 git remote ajouter l'origine [email protected]: aburgess / Mon-premier-GitHub-Repo.git maître d'origine git push

La commande git-remote vous permet de suivre d’autres référentiels et de les garder «synchronisés» avec votre référentiel local. Dans notre cas, nous suivons le référentiel sur GitHub à partir de notre référentiel local. Donc, cette première ligne ajoute une télécommande; nous l'appelons "origine" et lui donnons une URL. Ceci est une URL privée que vous seul pouvez utiliser pour lire et écrire sur votre rapport GitHub..

Dans la deuxième ligne, nous utilisons la commande git-push pour envoyer tout le contenu de la branche principale à l’origine (notre référentiel GitHub). Notez qu'aucun travail de codage ou de projet (création de fichiers, etc.) n'est effectué sur GitHub. C'est tout le travail local; vous devriez travailler sur votre projet comme vous le feriez avec un dépôt local simple. Cependant, vous le pousserez régulièrement vers GitHub avec cette deuxième ligne.

Disons que vous travaillez sur un projet depuis un certain temps et que vous avez poussé vos commits vers un dépôt GitHub. Quelles méta-données de projet pouvons-nous explorer sur GitHub? Regardons le référentiel jQuery.

Voir cette barre d'outils près du sommet, juste sous le nom du projet? Ces options nous permettent d'explorer certaines des informations Git que nous avons découvertes dans la dernière ligne de commande. En ce moment, nous sommes sur l'onglet source. Cela commence par des listes déroulantes pour les branches de repo et les tags; utilisez-les pour afficher les différentes branches ou balises. Il y a aussi des méta-données de projet; nous avons le nom du projet, l'URL et les URL de clonage (ces URL sont en lecture seule).

Ensuite, vous pouvez voir les informations sur le dernier commit: auteur, heure, commentaire et hash. Sous celui-ci, vous avez un navigateur de fichiers, qui affiche les dernières versions de tous les fichiers du projet, ainsi que leur âge et le message du dernier commit dans lequel ils ont été modifiés..

Si le projet contient un fichier lisez-moi, il est affiché dans le navigateur de fichiers..

Commet

Passons à l'onglet des validations en haut et voyons ce qu'il contient.

Comme vous vous en doutez, nous pouvons afficher un arriéré de commits sur ce projet. En cliquant sur le hash de commit (à droite de l'entrée de commit), vous pourrez voir ce qui a été modifié dans le commit.

Les lignes vertes (précédées d'un '+') sont des ajouts et les lignes rouges (précédées d'un '-') sont des suppressions.
Vous pouvez vous abonner au flux RSS de l'historique de validation de n'importe quel dépôt si vous souhaitez en suivre l'évolution..

Réseau

L'onglet suivant est l'onglet réseau; Cela vous montre une représentation graphique de l'historique du référentiel. Ce graphique est dessiné du point de vue du committer 'jQuery'. Chaque commit apparaît seulement une fois, aussi les commit sur la ligne de jQuery ne sont pas dans le dépôt de jQuery. De cette façon, nous pouvons voir ce que les autres personnes ont commis et que nous n’avons pas. C'est incroyablement utile, mais un peu déroutant si vous ne rigolez pas tout le temps. Si vous voulez en savoir plus, consultez le blog de GitHub à ce sujet..
L'onglet réseau propose également une liste des membres (les personnes ayant fourni le repo) et un flux.

Graphiques

L'onglet Graphiques vous offre différentes vues de votre projet d'un point de vue graphique. Ce ne sont que des méta-données, mais elles peuvent offrir des informations intéressantes:

File d'attente fourchette

Si vous consultez un référentiel que vous possédez, vous verrez un autre onglet, File d'attente. Cela vous montre les mêmes informations que celles que vous avez vues dans le graphique de réseau, mais différemment. À partir de là, vous pouvez choisir les commits à appliquer à votre référentiel, sur la branche de votre choix. Pour plus d'informations sur la file d'attente, consultez ce message et cette vidéo sur le blog de GitHub..

Vous pouvez activer trois autres onglets à partir du panneau d'administration du référentiel: wiki, problèmes et téléchargements. Celles-ci vous permettent de créer un wiki, de suivre les bugs de votre projet et de proposer des copies téléchargeables de votre rapport. Ils sont tous assez intuitifs.

Le côté social

Comme le dit le slogan, GitHub est entièrement consacré au codage social. Bien que nous en ayons déjà vu quelques-unes, il est temps de consulter le reste des fonctionnalités sociales de GitHub..

Explorer d'autres référentiels

Si vous avez un peu de temps libre et que vous souhaitez explorer un projet de codage pendant un certain temps, GitHub est l'endroit idéal. Voyons comment trouver des projets intéressants.
Commencez par cliquer sur "Explorer GitHub" à droite du champ de recherche. Nous avons deux onglets parmi lesquels choisir:

  • Dépôts
  • Chercher
  • Chronologie
  • Les langues
  • Changelog

Pour moi, le plus intéressé est l'onglet langues; choisissez votre langue et consultez les projets les plus regardés et les plus divers pour cette langue.

Alors disons que vous avez trouvé un projet qui vous intéresse; quoi ensuite?

Interaction avec d'autres référentiels

Lors de l'affichage d'un référentiel, les outils sociaux se trouvent sous la barre de recherche. En commençant par la droite, vous pouvez voir combien de personnes ont lancé le projet et combien de personnes le surveillent. Nous avons parlé de fourrer et de regarder, mais il est temps de mettre au point des définitions officielles..

  • La création d'un projet signifie que vous obtiendrez une copie de ce référentiel que vous pourrez utiliser à votre guise..
  • Regarder un projet signifie que ses actions apparaîtront dans votre fil de nouvelles, sur votre tableau de bord..

Je prends une piste de lapin, mais vous pouvez faire plus que regarder des projets; Si vous trouvez des développeurs particulièrement talentueux, vous pouvez les suivre pour suivre chaque frappe. Il suffit de cliquer sur le bouton suivre sur leur page de profil.

Vous pouvez également leur envoyer un message si vous le souhaitez. Maintenant on parle de réseau social!

De retour dans la barre d’outils sociale, le bouton suivant (se déplacer vers la gauche) vous permet de télécharger le code source du projet. Le bouton suivant vous permet d’acheter le dépôt, et le dernier vous permet de le regarder (vous avez vu cela venir).

Si vous envisagez de créer votre propre référentiel, il y aura deux autres boutons dans la rangée: "Demande d'extraction" et "Admin". Nous reviendrons sur «Demande de retrait» dans une minute. n'hésitez pas à regarder autour du panneau d'administration.

Il devrait être évident que la plupart des fonctionnalités de base sont:

  • changer votre branche par défaut
  • créer une page de projet (nous y reviendrons)
  • activer / désactiver ces onglets supplémentaires (wiki, téléchargements, problèmes)
  • renommer ou supprimer le repo

Lorsque vous avez terminé, cliquez sur le nom de votre projet en haut pour revenir à la vue source..

Avant de présenter les outils sociaux, notre scénario était que vous ayez trouvé un dépôt sur lequel vous souhaitez travailler. La première chose à faire est de lancer le projet; Il suffit de cliquer sur ce bouton "fork". Vous avez maintenant une copie du rapport sur votre compte. Clonons le repo sur votre ordinateur, en utilisant votre URL de clone privée. Cette opération configure automatiquement une origine appelée distante, comme indiqué précédemment. Cette origine n'est pas le projet original que vous avez créé (vous ne pouvez pas écrire dessus), mais votre copie associée. Vous devez toutefois configurer une télécommande pour le projet d'origine. faites-le avec cette commande:

 git remote add upstream [URL de clone public du projet original ici] git fetch upstream

Cette dernière ligne récupère les dernières branches de la télécommande en amont et les stocke dans les branches de suivi..
Il est maintenant temps de commencer à coder. Au fur et à mesure que vous vous engagez, ils afficheront le graphe réseau du projet d'origine, car ils ne figurent pas dans ce référentiel. Ils apparaîtront également dans la file d'attente de ce dépôt, afin que le propriétaire puisse les récupérer s'il les aime. Cependant, vous pouvez demander leur extraction. C'est à cela que sert le bouton de requête d'extraction: vous pouvez envoyer un message au propriétaire du dépôt d'origine..

Ce n'est rien d'extraordinaire vraiment, cela leur dit simplement qu'ils devraient vérifier leur file d'attente.
Mais que faire si ils ont apporté des modifications au projet depuis que vous l'avez créé? Il est recommandé d'intégrer leurs modifications dans votre référentiel avant de demander à ce qu'elles soient intégrées à vos modifications. Vous pouvez facilement obtenir leurs mises à jour en utilisant la télécommande en amont que vous avez créée! Il suffit de lancer cette commande:

 git chercher le maître en amont fusionner la fusion en amont / maître

Comme nous venons de le voir, la commande fetch récupère le dernier contenu de la télécommande spécifiée, dans notre cas, la télécommande amont. De plus, nous spécifions que nous ne voulons que la branche principale. La deuxième ligne fusionne la branche spécifiée avec celle sur laquelle nous sommes. Nous sommes sur la branche principale de notre référentiel local et nous souhaitons fusionner notre branche de suivi en amont / principale..

Remarque: si cette conversation de branche vous déroute, consultez cet article sur gitready.com. Fondamentalement, les branches de suivi sont simplement des branches qui gardent une trace de la relation des autres pensions avec le même projet par rapport à votre repo. Pour voir toutes vos branches lancer la commande branche git -a. Voici ce que je reçois pour un repo forké:

Si vous êtes paresseux, vous pouvez exécuter la commande maître en amont. Cela effectue simultanément les commandes d'extraction et de fusion. Cependant, cela pourrait causer des problèmes de fusion, alors évitez-le!
Une fois que vous avez fusionné les modifications, vous pouvez demander une extraction en toute tranquillité d'esprit, sachant que votre branche est à jour avec le référentiel en amont..

Pages utilisateur et projet

Github vous donne une possibilité plutôt unique de créer un site web personnel à partir d'un référentiel GitHub. Mon nom d'utilisateur GitHub est andrew8088. Par conséquent, si je créais un dépôt nommé andrew8088.github.com, il serait publié à l'adresse http://andrew8088.github.com. Aussi simple que cela!

Vous pouvez également créer un site pour un projet. C’est un peu plus compliqué, mais GitHub permet d’obtenir facilement une page générique expliquant votre projet. Cliquez sur ce bouton d'administrateur dans votre barre d'outils sociale. Cliquez ensuite sur "Générer votre page de projet" sous "Informations sur le référentiel".

Ensuite, il suffit de remplir tous les champs:

Et cliquez sur "Créer une page".

Si vous souhaitez personnaliser davantage votre page ou ajouter des pages, vous pouvez suivre les instructions avancées dans l'aide de GitHub Pages..

Quand ce n'est qu'un extrait

Vous avez déjà parlé de code avec un ami en ligne et vous vouliez partager un extrait? Cela nous arrive à tous, et GitHub offre un moyen rapide de le faire. C'est Gist. Ils le disent le mieux:

Gist est un moyen simple de partager des extraits et des pâtes avec d’autres. Tous les gists sont des référentiels git, ils sont donc automatiquement versionnés, formatables et utilisables comme référentiel git.

Cliquez sur le lien Gist situé à gauche du champ de recherche ou allez à Gist.GitHub.com. Vous pouvez simplement coller votre extrait ou tout saisir. Donnez-lui un nom de fichier et indiquez-leur la langue dans laquelle vous écrivez (pour la coloration syntaxique). Cliquez ensuite sur "Créer un répertoire public". Copiez l'URL et partagez!

Garder au courant

N'importe quel réseau social peut devenir addictif, et GitHub n'est pas différent. Si vous souhaitez garder une trace de vos dépôts pendant vos déplacements, consultez iOctocat, l'application GitHub pour iPhone et iPod Touch..

Conclusion

Eh bien, cela a été une tournée éclair, mais j'espère que vous vous sentez plus à l'aise avec ce qui pourrait être le meilleur site d'hébergement / de partage de code sur le Web! Jamais utilisé GitHub? Avoir une meilleure option? Hit les commentaires!

Écrire un tutoriel Plus

Saviez-vous que vous pouvez gagner jusqu'à 600 USD en écrivant un tutoriel et / ou un screencast PLUS pour nous?? Nous recherchons des didacticiels détaillés et bien écrits sur HTML, CSS, PHP et JavaScript. Si vous en avez la possibilité, veuillez contacter Jeffrey à l'adresse [email protected]..

Veuillez noter que la rémunération réelle dépendra de la qualité du didacticiel final et du screencast..

  • Suivez-nous sur Twitter ou abonnez-vous au fil RSS Nettuts + pour obtenir les meilleurs tutoriels de développement Web sur le Web..