如何在GitHub中组织和分类小项目?

时间:2016-12-20 23:48:42

标签: python git github development-environment organization

我是开发新手,并尝试将我已经处理过的小项目上传到我的GitHub个人资料中。这些项目并非相互依赖。

我的问题是其中一些是小型单文件项目。有点像我已经解决的迷你挑战。因此,我正在考虑将它们组合在一个名为“Python编程”的repo中。

这是一个好习惯吗?

  • 如果是的话,我应该如何在Git中进行,并且 我怎样才能为每个迷你项目显示一个README文件。

  • 如果不是,你会建议做什么?

2 个答案:

答案 0 :(得分:3)

GitHub将为您访问的每个文件夹呈现README文件,因此当仅使用单个存储库时,一个解决方案仍然是为每个“子项目”创建一个子文件夹,因此可以拥有自己的README文件。

但在走这条路之前,你应该考虑一下这些小项目是否真的属于一起。这最终应决定是否要将它们全部放在同一个存储库中,或者是否要将其拆分为多个存储库。

该决定需要考虑的一些事项:

  • 如果项目不依赖于另一个项目,他们是否仍与另一个项目联系起来?例如,那些项目是Project Euler等更大的编程挑战的一部分吗?您只是收集所有解决方案?然后单个存储库可能更有意义。
  • 个别项目成长为更大的东西的机会是多少?许多事情从很小的事情开始,但最终可以发展成为他们自己的存储库合理的真实事物。那时,你甚至可以让别人做出贡献。
  • 这些单独的文件共享历史记录是否有意义?文件甚至会在“完成”后进行编辑吗?即这只是成品的集合,还是他们实际上正在进行的实验?

归根结底,这取决于您的个人选择。但作为存储库主机的GitHub不应该推动你的决定。您应该在本地创建Git存储库,因为它对您有意义。如果这意味着你只有一个,那很好。如果这意味着你创造了很多,那也没关系。

不幸的是,GitHub UI并不适用于小型一次性项目。存储库列表只是为了无组织。如果您决定使用小项目,我建议您在GitHub配置文件中添加一些分类前缀,以便了解这是什么。

一次性项目的一个很好的替代方案,特别是当它只是一个(或几个)文件时Gists。 Gists作为一种共享代码片段的方式而诞生,但在引擎盖下,每个Gist实际上都是一个完整的Git存储库。当然,Gists不提供GitHub上的正常存储库工具(例如问题,拉取请求,维基)。但是对于你描述的内容,你可能不需要那些。然后,Gists是分享简单事物的好方法,无需在配置文件中添加完整的存储库。您仍然可以克隆它们(远程URL为git@gist.github.com:/<gist-id>.git),并且如果您需要,可以拥有完整的历史记录并支持多个文件。

答案 1 :(得分:2)

通常,您会看到repo的顶级包含README文件,可能是setup.py和其他一些无关信息,也许是tests文件夹。然后会有一个与repo共享名称的文件夹。该文件夹内部是代码,它们是模块/包/脚本的核心内容。

看到不同的组织也是不寻常的,特别是对于单个文件脚本的非常小的项目。

对于你提到的具体案例,做你喜欢的事。你提出的建议对我来说听起来很合理。对于我解决的所有挑战,我不想单独回购!

我通常使用gist来处理我不一定想要回购的琐碎项目,包括编码挑战。所以我会提供这个替代方案。做任何最适合你的事。