我是git的新手,我现在做的是将我最近的所有项目作为存储库上传到github。有很多不同的项目,比如网页设计、wordpress主题和不同类型的应用程序。其中一些也属于更大的项目,因为它们是作为不同的应用程序来测试一些东西。

问题是我现在有一个令人困惑的在线存储库的数量。我如何在一个文件夹结构组相关的github存储库?在github上是否有一个功能提供任何排序和结构甚至标签存储库的能力?


当前回答

这与其说是一个回答,不如说是一个提醒。

结构化利用组织的一个最近的副作用已经暴露出来,因为下面宣布为用户提供免费的私人回购:https://blog.github.com/2019-01-07-new-year-new-github/

组织私人回购仍然不是免费的。因此,使用组织来分离回购将导致你的组织无法利用免费的私人回购,如果这是你需要的。

其他回答

所以确认Github没有文件夹功能。

我认为要组织存储库,可以采用两种方法。

to use a file system, each file refer to one repository, they are just a link to GitHub, put them inside the folder with folder names as the categories ( a python script could generate all files, and you drag and drop) cons: it assumes the structure is a tree, so one repo maximum have one parent( one category) code : https://gist.github.com/AronWaterAron/0e2af669f942c95306123b1fcd556126 organize using a directed graph ( no existing tool, you need to build a web or desktop app to do that, I am coding this out)

git repo和git repo表示它们所属业务域的服务。因此,团队拥有这些回购是有道理的。您可以创建一个团队,并添加该团队拥有的回购。使用团队的概念也可以更好地管理访问。

这个想法的灵感来自Team Topology

项目方法的缺点包括:

项目(即“文件夹”)则不是回购所在的文件夹 通常可见,例如在主页或个人资料。要使这些地方可见,需要在回购的名称中添加手动标记,例如 比如@peter554。但是更改“文件夹”(即项目)需要 更改回购名称中的项目和手动标记。 不能向项目中添加分叉。

联合国的办法没有这些问题。然而:

您的“文件夹”回购将从您的帐户个人资料页面消失。但组织可以通过成为公众成员而在那里可见。(可以在组织内的“人员”下设置)

注意:随着Github的进一步发展,这些内容可能会发生变化。

对于初学者来说,你现在可以在GitHub中以主题的形式标记回购。耶!

但我不认为这能解决更大的问题。为此,我尝试了顶级文件夹系统(其中每个项目都是一个repo中的文件夹)。我还尝试过每个项目一个分支的系统(其中每个项目都在一个新的分支中)。最后一个方法允许你单独地拉和推每个项目!但是,这两种情况都不理想。

您还可以研究其他版本控制系统,如subversion和mercurial。如果你需要,Mercurial也可以托管在Bitbucket上,Facebook甚至正在寻求对“多项目存储库”的支持。

我个人喜欢https://hg.openjdk.java.net/(或http://hg.netbeans.org/)的系统,在那里你有一个文件夹设置,每个项目托管在端点上。实现这一点的最好方法是通过创建一个网站(你可以在GitHub中做)与你的项目结构(如https://mvnrepository.com/或https://www.npmjs.com/)。

模拟文件夹的一种可能方法是在repo描述的末尾附加逗号分隔的标记。然后你可以通过这些标签搜索repo,因为GitHub 'Find a repository…'过滤器看起来在回购描述!一个例子:

MyRepo:做一些很酷的事情[计算机视觉,机器学习,python]