GitHub和gist有什么区别?


573

要点的目的是什么?与使用GitHub进行常规代码共享/维护有什么区别?


20
要点是与他人共享代码片段和粘贴内容的简单方法。
Felix Kling

154
题外话如何?我考虑了程序员常用的 gist和github 软件工具。这个问题很合适。
golem 2015年

50
我投票决定重新讨论这个问题,因为它非常有用,并且与程序员常用的软件工具有关。Github上的“ 关于Gists ”页面包含一些有用的信息,但未回答有关关键区别以及在哪种情况下用户可能会偏爱另一个的问题。我个人想看到这个问题的更详细的答案。
西蒙东

6
我在任何地方都没有看到的重要区别是Gist放弃了对目录的支持。我只在遇到此问题时才注意到它:stackoverflow.com/a/27677649/5343341
Robotic-Brain

1
如何创建要点的版本?每次输入字符时自动执行,还是有提交机制?很抱歉继续使用此线程,但这是一个方便的地方!
seinecle

Answers:


348

GitHub是整个站点。要点是该站点上提供的一项特殊服务,即类似于pastebin的代码段。但是,一切都是由git版本控制控制的,因此要点也有完整的版本历史。


191
那么要点和存储库之间有什么区别?每种都有哪些优点和缺点?(我相信这是OP想要问的)
chharvey

59
@ TestSubject528491:存储库用于用户创建的文件。要点是一段代码(通常不与其他代码连接),例如讨论或给出示例。
Kerrek SB

19
@ TestSubject528491正如Kerrek所说,Gists本质上与Githubs等同于Pastebin。
Phill Healey 2013年

45
@Pacerier:当然可以。但是,然后您需要自己管理文件,克隆存储库,推送提交等等。要点使您可以直接在浏览器中编辑文本,无需管理任何文件。正如我所说的,相同的基础版本控制机制,但是解决了不同的需求。
Kerrek SB 2015年

19
@SimonEast github和gist之间的主要区别在于功能和用户界面方面:一个设计时考虑了很多功能和灵活性,这既适合小型项目,也适合非常大的项目,而gist是仅适合非常小的项目。例如,要点确实支持多文件,但是界面非常简单,并且功能有限,因此它们甚至没有文件浏览器,也没有问题,拉取请求或Wiki。如果您不需要它,要点非常好,而且更加分散。就像评论一样,而不是答案。
joseLuís

136

我对Gist和GitHub的个人看法:

要点:要点是与他人共享代码段和粘贴的简单方法。当您需要与同事或朋友共享一段示例代码或技术时,可以使用它。

另一方面,GitHub GitHub提供了一个平台,可以在团队(私有仓库)或整个世界(公共仓库)中作为仓库共享整个项目。

两者都会记录版本详细信息。


1
您能详细举例说明吗
-Chetan

6
@Chetan 要点示例(请注意,它只是一个文件,实际上不需要任何支持文件,没有人会制作票证,等等(此外,配置可能很旧,所以不要使用它) )。一个项目的示例,它很小,但是有人可以打开带有建议的票,并且容易记住地址与gist的网址
vrillusions 16-10-28

45

github和gist之间的主要区别在于功能和用户界面的数量:

设计时要考虑到许多功能和灵活性,这既适用于大型项目,也适用于小型项目,而要点仅适用于小型项目。

例如,要点确实支持多文件,但是界面非常简单,并且功能有限,因此它们甚至没有文件浏览器,也没有问题,拉取请求或Wiki。如果您不需要它,要点非常好,而且更加分散。就像评论一样,而不是答案。

注意:感谢@Qwerty提出的使我的评论成为真实答案的建议。


4
另外,“要点用于文件,存储库用于目录”,twitter.com
Qwerty

5
我认为,这是迄今为止该问题的唯一真正答案。其他每个答案都只是重申了站点的目的,而没有说明实现此目的的功能和差异。这就像说“这辆车是要开车去海滩,但要开车去上班”,却没有提到沙滩车是敞篷车。
DavidS

20

我个人的理解,或者说我个人对Gist和Github的使用是:

  • Github

一项大型项目。如果您想建立网站,开发手机或Web应用程序或与队友一起做作业,当然可以使用github。

  • 要旨

更像是备忘录。例如,您可以编写一个小功能的实现并将其分享到您的博客中,或者写下您对项目的看法并与队友共享。就像上面的回答说的一样,要点用于更多的代码片段。因此,通常,如果您从事的项目是使用github。


3
“备忘录”类比为我清除了这一点,否则,我不得不问“什么是粘贴纸箱?”
YCode

18

您可以通过访问以下URL gist.github.com来访问Gist 。或者,您可以从Github帐户(登录后)中访问它,如下图所示:

如何从github控制台中访问要点

 

Github:一种托管服务,其中包含基于Web的git存储库。它包括git的所有功能,并添加了其他功能。

 

要点:是github上的一项附加功能,用于共享代码段,注释,任务列表等。您可以将Gist保存为秘密或公开。Secret Gist隐藏在搜索引擎中,但与您共享URL的任何人都可以看到。

例如。如果您想编写私人待办事项清单。您可以使用Github Markdown编写如下代码:

如何撰写私人待办事项清单

注意:重要的是保留虚线和方括号之间的空白,如上所示。保存扩展名为.md的文件也很重要,因为我们希望markdown能够正确格式化。如果您不希望其他人看到它,请记住将其保存为秘密。

 

最终结果如下图所示。这些复选框是可单击的,因为我们将此Gist保存为扩展名.md

如果正确格式化了待办事项清单


4
“如果您不希望其他人看到它,请记住将其保存为秘密。” 小心-如果其他人碰巧知道它的URL,则其他人会看到您的秘密要旨。见help.github.com/articles/about-gists/#secret-gists

这如何回答Gists和Github之间的区别?(或Github
仓库-OP

现在,它甚至可以与“ gist.new”一起使用
Abhik Banerjee

3

“ Gist实际上是Git存储库,这意味着即使您不是原始作者,也可以分叉或克隆任何gist。您还可以查看要点的完整提交历史记录,包括差异。”

→查阅官方github文档

因此,关键区别在于它们是单个文件。

哦,而且:如果我正确理解的话,要点也可以是“秘密”(例如:私有网址),而不必是付费的github客户。


4
要点可以有多个文件
-antont


哇,所以我可以克隆我的要点,例如git clone https://gist.github.com/jxramos/b227766a5f593b1154449217a656158d,在我的文件系统上创建了一个名为的目录,在这种情况下b227766a5f593b1154449217a656158d它包含一个文件semantic_notes.md。我将像回购协议一样尝试开发自己的要旨。很高兴知道。这也必须是注释也要添加到要点修订中的方式。从未见过如何从UI编辑器中做到这一点。
jxramos

3

GitHub要点

要或不要。那是$ 64的问题...

GitHub的要旨Single ( or, multiple ) Simple Markdown Files回购状可分叉或克隆(如果公共)的品质。

否则,不是私有的。

有点像花哨的便笺簿,可以共享。

类似于我现在正在键入的此注释便笺簿,但更加详细。

然而,一个正式,完整的GitHub库的源代码一个完全成熟的存储库src,支持文件(降价或HTML,或两者)docsroot,图片pngicosvg,和一个config.sys用于运行托管的哲基尔服务器上YAML变量文件。

一个简单的Gist文件是否支持Yaml前端?

我认为不是。

从官方GitHub Gist文档中...

要点编辑器由CodeMirror驱动

但是,您可以复制公共Gist(如果所有者通过链接到私有Gist授予您访问权限,则可以复制私有Gist)...

然后,您可以page.md使用Visual Studio Code 将公共Gist嵌入到“官方”存储库中,如下所示:

“您可以在支持Javascript的任何文本字段中嵌入要点,例如博客文章。”

“要获取embed代码,请单击Embed URL要点按钮旁边的剪贴板图标。”

现在,这是一个很酷的功能。

使我想搜索(发现)其他人的要旨或OPG,并将他们的“公共”工作纳入我成熟的工作库中。

“您可以通过访问gist主页并单击链接来发现其他人创建的PUBLIC gists。

所有Gists {:title ='单击以查看GitHub Gists上的发现功能'} {:target ='_ blank'}。”

警告。GitHub Gist不支持Liquid标签。

我想,如果我确实找到了一些有益的东西,那么我可以随时回溯,或者在确实成熟的工作库中使用该工作时引用该消息源。

由其作者公开的所有要旨的隐式许可证在哪里发布?

罗伯特

PS这是一个很好的评论。我想我会将其转换为,gist并使其可以在GitHub Gists上公开搜索。

注意。当嵌入<script></script>一个降价(.MD)文件的正文中的HTML标签,你可以从你得到一个警告“MD033” 棉短绒

但是,这不应影响从script标记内部调用的数据(src)的呈现。

要更改默认警告标志以容纳scriptVisual Studio Code中标签的被调用内容,请在Json文件中的Markdownlint配置对象中添加一个条目User Settings,如下所示:

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

注意David AnsonGitHub Commit派生的解决方案


花点时间通读帮助中心中的编辑帮助。堆栈溢出上的格式与其他站点不同。
伊赛亚·梅多斯

此外,GitHub的要点可以让你发布很多不仅仅是代码。这是此的一个具体示例,是的,实际上我已经在它上使用了Git。(实际上,您可以将它们视为来自Git客户端的完善的回购协议,包括额外的分支;您只是不具备所有的问题管理功能,基本Git内容的Web界面以及在适当的GH中附带的其他功能。 。)
Isiah Meadows

2

GISTS Gist是GitHub提供的出色服务。使用此服务,您可以公开或私下共享您的作品。您可以共享一个文件,文章,完整的应用程序或源代码等。

GitHub不仅仅是Gist。它提供了巨大的服务,可以将项目或程序数字资源组合到一个称为存储库的集中位置,并在利益相关者之间共享。GitHub存储库将保存或维护文件的多个版本或更改历史记录,您可以在需要时检索文件的特定版本。而要点将把每个帖子创建为新的存储库,并将保留文件的历史记录。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.