Quelle est la différence entre GitHub et gist?

576

Quel est le but de gist et en quoi est-il différent du partage / maintien de code normal en utilisant GitHub?

NSExplorer
la source
20
Gist est un moyen simple de partager des extraits et des pâtes avec d'autres.
Felix Kling
154
Comment est-il hors sujet? Je considère les outils logiciels gist et github couramment utilisés par les programmeurs . Cette question s'intègre parfaitement.
golem
50
J'ai voté pour rouvrir cette question car elle est utile et concerne les outils logiciels couramment utilisés par les programmeurs. La page " À propos de Gists " sur Github contient des informations utiles, mais ne répond pas à la question sur les principales différences et dans quelles circonstances un utilisateur pourrait préférer l'une à l'autre. J'aimerais personnellement voir des réponses plus détaillées à cette question.
Simon East
6
Une différence importante que je ne vois nulle part est que Gist a abandonné le support des répertoires. Je ne l'ai remarqué que lorsque j'ai rencontré ce problème: stackoverflow.com/a/27677649/5343341
Robotic-Brain
1
Comment les versions d'un gist sont-elles créées? Automatiquement à chaque fois qu'un caractère est entré, ou existe-t-il un mécanisme de validation? Désolé de continuer avec ce fil mais c'est un endroit pratique!
seinecle

Réponses:

349

GitHub est l'ensemble du site. Les Gists sont un service particulier offert sur ce site, à savoir des extraits de code similaires à pastebin. Cependant, tout est piloté par le contrôle de révision git, donc les gists ont également des historiques de révision complets.

Kerrek SB
la source
191
Alors, quelle est la différence entre un Gist et un référentiel? Quels sont les avantages et les inconvénients de chacun? (Je crois que c'est ce que le PO avait l'intention de demander)
chharvey
59
@ TestSubject528491: Un référentiel est destiné aux fichiers créés par l'utilisateur. Un gist est pour un morceau de code (généralement non connecté à un autre code), comme pour discuter ou donner des exemples.
Kerrek SB
19
@ TestSubject528491 Comme le dit Kerrek, les Gists sont essentiellement des équivalents Githubs de Pastebin.
Phill Healey
45
@Pacerier: Bien sûr que vous le pourriez. Mais ensuite, vous devez gérer les fichiers vous-même, cloner le référentiel, pousser les validations et tout ça. Les listes vous permettent de modifier le texte directement dans le navigateur et il n'y a aucun fichier que vous devez gérer. Comme je l'ai dit, même mécanisme de contrôle de version sous-jacent, mais répondant à des besoins différents.
Kerrek SB
19
@SimonEast les principales différences entre github et gists sont en termes de nombre de fonctionnalités et d'interface utilisateur: l'une est conçue avec un grand nombre de fonctionnalités et de flexibilité à l'esprit, ce qui convient parfaitement aux petits et très grands projets, tandis que les gists sont seulement un bon ajustement pour de très petits projets. Par exemple, les gists prennent en charge plusieurs fichiers, mais l'interface est très simple et leurs fonctionnalités sont limitées, de sorte qu'ils n'ont même pas de navigateur de fichiers, ni de problèmes, de demandes d'extraction ou de wiki. Si vous n'en avez pas besoin, les informations sont très agréables et plus discrètes. Comme les commentaires, au lieu des réponses, dans SO.
joseLuís
136

Ma vision personnelle de Gist et GitHub:

Gist: Gist est un moyen simple de partager des extraits de code et des pâtes avec d'autres. Il est utilisé lorsque vous devez partager un exemple de code ou de technique avec vos collègues ou amis.

Et

GitHub GitHub, d'autre part, fournit une plate-forme pour partager un projet entier comme un repo entre une équipe (repo privé) ou au monde entier (repo public).

Les deux enregistreront les détails de la version.

Jayavignesh Vicky
la source
1
pouvez-vous donner un exemple en détail
Chetan
6
Exemple @Chetan d' un gist (notez qu'il ne s'agit que d'un seul fichier, pas vraiment besoin de fichiers de support, personne ne va jamais faire de tickets, etc. (en passant, cette configuration est probablement ancienne, alors ne l'utilisez pas) ). exemple d' un projet c'est assez petit mais quelqu'un pourrait ouvrir un ticket avec des suggestions et une adresse facile à retenir vs l'url de gist
vrillusions
45

Les principales différences entre github et gists sont en termes de nombre de fonctionnalités et d'interface utilisateur:

L'un est conçu avec un grand nombre de fonctionnalités et de flexibilité à l'esprit, ce qui convient parfaitement aux petits et très grands projets, tandis que l'essentiel ne convient qu'aux très petits projets.

Par exemple, les gists prennent en charge plusieurs fichiers, mais l'interface est très simple et leurs fonctionnalités sont limitées, de sorte qu'ils n'ont même pas de navigateur de fichiers, ni de problèmes, de demandes d'extraction ou de wiki. Si vous n'en avez pas besoin, les informations essentielles sont très agréables et plus discrètes. Comme les commentaires, au lieu des réponses, dans SO.

Remarque: Merci à @Qwerty pour la suggestion de faire de mon commentaire une vraie réponse.

joseLuís
la source
4
Aussi "Les listes sont pour les fichiers, les référentiels sont pour les répertoires", twitter.com/pavelrepin/status/297473901884223488
Qwerty
5
À mon avis, c'est la seule vraie réponse à la question à ce jour. Toutes les autres réponses ne font que réaffirmer l'objectif des sites sans expliquer quelles fonctionnalités et différences permettent cet objectif. C'est comme dire "Cette voiture est destinée à se rendre à la plage, mais cette voiture est destinée à se rendre au travail", sans mentionner que la voiture de plage est un cabriolet.
DavidS
20

Ma compréhension personnelle ou pour dire mon utilisation personnelle de Gist et Github est:

  • Github

Un gros travail de projet. Si vous voulez créer un site Web, développer une application mobile ou Web ou faire votre devoir avec vos coéquipiers, utilisez bien sûr github.

  • Essentiel

plus comme un mémo. par exemple, vous pouvez écrire l'implémentation d'une petite fonctionnalité et la partager sur votre blog ou écrire ce que vous pensez du projet et la partager avec vos coéquipiers. Tout comme ce que les réponses ci-dessus ont dit, gist est utilisé pour plus comme un extrait de code. Donc normalement, si vous travaillez sur un projet, vous utilisez github.

J.DoG
la source
3
L'analogie "mémo" a éclairci cela pour moi - sinon, je devrais demander "qu'est-ce qu'une boîte à pâte?"
YCode
18

Vous pouvez accéder à Gist en visitant l'url suivante gist.github.com . Alternativement, vous pouvez y accéder depuis votre compte Github (après vous être connecté), comme indiqué dans l'image ci-dessous:

comment accéder à gist depuis la console github

 

Github: un service d'hébergement qui héberge un référentiel git basé sur le Web. Il inclut toute la fonctionnalité de git avec des fonctionnalités supplémentaires ajoutées.

 

Gist: est une fonctionnalité supplémentaire ajoutée à github pour permettre le partage d'extraits de code, de notes, de listes de tâches et plus encore. Vous pouvez enregistrer vos Gists en tant que secret ou public. Les Secret Gists sont cachés des moteurs de recherche mais visibles par tous ceux avec qui vous partagez l'url.

Par exemple. Si vous vouliez écrire une liste de tâches privée. Vous pouvez en écrire un en utilisant Github Markdown comme suit:

comment écrire une liste de tâches privée

NB: Il est important de conserver les espaces comme indiqué ci-dessus entre le tiret et les crochets. Il est également important que vous enregistriez le fichier avec l'extension .md car nous souhaitons que le démarque soit correctement formaté. N'oubliez pas de sauvegarder ce Gist comme secret si vous ne voulez pas que les autres le voient.

 

Le résultat final ressemble à l'image ci-dessous. Les cases à cocher sont cliquables car nous avons enregistré ce Gist avec l'extension .md

À quoi ressemble la liste des choses à faire si vous l'avez formatée correctement

JSON C11
la source
4
"N'oubliez pas de sauvegarder ce Gist comme secret si vous ne voulez pas que les autres le voient." Soyez prudent - D'autres personnes peuvent voir votre essence secrète s'il leur arrive d'avoir son URL. Voir help.github.com/articles/about-gists/#secret-gists
Gan
Comment cela répond-il à la différence entre Gists et Github? (ou Github repos - la question que OP voulait probablement vraiment poser) Cela ne répond pas du tout à la question d'origine
JoelAZ
Cela fonctionne même maintenant avec "gist.new"
Abhik Banerjee
3

«Les Gists sont en fait des référentiels Git, ce qui signifie que vous pouvez fork ou cloner n'importe quel gist, même si vous n'êtes pas l'auteur d'origine. Vous pouvez également afficher l'historique complet des validations d'un gist, y compris les différences. »

→ consultez la documentation officielle de github

La principale différence est donc qu'il s'agit de fichiers uniques.

Oh, et: les gists peuvent être "secrets" (comme dans: url privé) également sans être un client github payant, si je comprends bien ...

Frank Nocke
la source
4
les gists peuvent avoir plusieurs fichiers
antont
Cool, je ne savais pas ça !
Frank Nocke
wow, donc je peux cloner mon gist, par exemple git clone https://gist.github.com/jxramos/b227766a5f593b1154449217a656158dqui crée un répertoire sur mon système de fichiers nommé b227766a5f593b1154449217a656158det qui contient un seul fichier semantic_notes.mddans ce cas. Je vais expérimenter le développement sur mon gist comme un repo. Bon à savoir. C'est aussi ainsi que les commentaires doivent être ajoutés aux révisions essentielles. Je n'ai jamais vu comment faire cela depuis l'éditeur d'interface utilisateur.
jxramos
3

GitHub Gists

Gist ou ne pas gist. Telle est la question à 64 $ ...

GitHub Gists sont Single ( or, multiple ) Simple Markdown Filesde type repo qualités qui peuvent être fourchus ou clonés (si public).

Sinon, pas si privé.

Un peu comme un bloc-notes élégant qui peut être partagé.

Semblable à ce bloc-notes de commentaires que je tape maintenant, mais un peu plus élaboré.

Considérant que, un officiel , plein repo GitHub est un dépôt complet soufflé de code source src, les documents de support (minoration ou HTML, ou les deux) docsou root, images png, ico, svg, etconfig.sys fichier pour exécuter des variables Yaml hébergées sur un serveur Jekyll.

Un simple fichier Gist prend-il en charge le front de Yaml?

Moi non.

De la documentation officielle de GitHub Gist ...

L'éditeur gist est propulsé par CodeMirror .

Cependant, vous pouvez copier un Gist public (ou un Gist privé si le propriétaire vous a accordé l'accès via un lien vers le Gist privé) ...

Et, vous pouvez ensuite intégrer ce Gist public dans un dépôt "officiel" page.md aide de Visual Studio Code, comme suit:

"Vous pouvez intégrer un élément essentiel dans n'importe quel champ de texte qui prend en charge Javascript, comme un article de blog."

"Pour obtenir le embedcode, cliquez sur l'icône du presse-papiers à côté du Embed URLbouton d'un résumé."

Maintenant, c'est une fonctionnalité intéressante.

Me donne envie de rechercher (découvrir) les esprits d'autres peuples, ou OPG et d'intégrer leur travail "public" dans mes repos de travail à part entière.

"Vous pouvez découvrir les gists PUBLIC que d'autres ont créés en allant sur la page d'accueil de gist et en cliquant sur le lien ...

Tous les Gists {: title = 'Cliquez pour revoir la fonctionnalité de découverte sur GitHub Gists'} {: target = '_ blank'}. "

Caveat . Pas de prise en charge des balises Liquid sur GitHub Gist.

Je suppose que si je trouve quelque chose de bénéfique, je peux toujours faire un ping-back, ou citer cette source si j'utilise le travail dans mes repos de travail à part entière.

Où la licence implicite est-elle affichée pour tous les résumés rendus publics par leurs auteurs?

Robert

PS C'est un bon commentaire. Je pense que je vais transformer cela en un gistet le rendre publiquement consultable sur GitHub Gists.

Remarque . Lorsque vous incorporez la <script></script>balise html dans le corps d'un fichier Markdown (.md), vous pouvez obtenir un avertissement "MD033" de votre linter .

Cela ne devrait cependant pas affecter le rendu des données (src) appelées depuis la scriptbalise.

Pour modifier l'indicateur d'avertissement par défaut pour prendre en charge le contenu appelé d'une scriptbalise à partir de Visual Studio Code, ajoutez une entrée à l' objet de configuration Markdownlint dans le User Settingsfichier Json, comme suit:

// Begin Markdownlint Configuration Object
"markdownlint.config": {
  "MD013": false,
  "MD033": {"allowed_elements": ["script"]}
}// End Markdownlint Configuration Object

Remarque . Solution dérivée de GitHub Commit par David Anson

Robert Weber
la source
Prenez un moment pour lire l' aide à l' édition dans le centre d'aide. Le formatage sur Stack Overflow est différent de celui des autres sites.
Isiah Meadows
De plus, GitHub Gist vous permet de publier bien plus que du code. Voici un exemple concret de cela , et oui, j'ai utilisé Git avec. (Vous pouvez en fait les traiter comme des référentiels à part entière à partir d'un client Git, y compris des branches supplémentaires; vous n'avez tout simplement pas toute la gestion des problèmes, les interfaces Web pour les trucs Git de base et d'autres subtilités qui vont avec le fait d'être dans un GH approprié repo.)
Isiah Meadows
2

GISTS The Gist est un service exceptionnel fourni par GitHub. En utilisant ce service, vous pouvez partager votre travail en public ou en privé. Vous pouvez partager un seul fichier, des articles, des applications complètes ou du code source, etc.

Le GitHub est bien plus que de simples Gists. Il fournit d'immenses services pour regrouper un projet ou des programmes de ressources numériques dans un emplacement centralisé appelé référentiel et partager entre les parties prenantes. Le référentiel GitHub conservera ou maintiendra la version multiple des fichiers ou l'historique des modifications et vous pouvez récupérer une version spécifique d'un fichier quand vous le souhaitez. Tandis que gist créera chaque publication en tant que nouveau référentiel et conservera l'historique du fichier.

Sunil Vishnu Raskar
la source