关于仓库
存储库是 GitHub 的最基本元素。 可在存储库中存储代码、文件和每个文件的修订历史记录。 存储库可以有多个协作者,并且可以是公共 、内部 ,也可以是专用的。
要新建存储库,请转到 https://github.com/new。 有关说明,请参阅“仓库快速入门”。
存储库术语
在开始使用存储库之前,请先了解这些重要术语。
| 术语 | 定义 |
|---|---|
| 分支 | 存储库包含的代码的并行版本,不影响主分支。 |
| 克隆 | 从 GitHub.com 下载存储库数据的完整副本,包括每个文件和文件夹的所有版本。 |
| 创建分支 | 与原“上游”存储库共享代码和可见性设置的新建存储库。 |
| 合并 | 从一个分支获取更改并将其应用到另一个分支。 |
| 拉取请求 | 将更改从一个分支合并到另一个分支的请求。 |
| Remote | 存储库存储在 GitHub 上,而非计算机上。 |
| 上游 | 分叉或克隆的原始存储库上的分支。 克隆或分叉存储库上的相应分支称为“下游”。 |
关于存储库所有权
您可以个人拥有仓库,也可以与组织中的其他人共享仓库的所有权。
在任一情况下,对存储库的访问均按权限管理。 有关详细信息,请参阅 个人帐户存储库的权限级别 和 组织的存储库角色。
关于协作
您可以使用仓库管理您的工作并与他人合作。
- 您可以使用议题来收集用户反馈,报告软件缺陷,并组织您想要完成的任务。 有关详细信息,请参阅“关于议题”
- 您可以使用 GitHub Discussions 来提问和回答问题、共享信息、发布公告以及进行或参与有关项目的对话。 有关详细信息,请参阅“关于讨论”。
- 您可以使用拉取请求来建议对仓库的更改。 有关详细信息,请参阅“关于拉取请求”。
- 可以使用 Projects 来组织和拉取请求并确定其优先级。 有关详细信息,请参阅“关于 Projects”。
通过个人帐户和组织的 GitHub Free,可与无限制的协作者合作处理设置了完全功能的无限制公共存储库,或者是设置了有限功能的无限制专用存储库。 要获取对私有仓库的高级处理,您可以升级到 GitHub Pro、GitHub Team 或 GitHub Enterprise Cloud。 有关详细信息,请参阅 GitHub 的计划。
关于仓库可见性
可以通过选择存储库的可见性来限制谁有权访问存储库:公共、内部或专用。
创建存储库时,可以选择将存储库设为公开或私有。 如果要在企业帐户拥有的 组织中创建存储库,则还可以选择将存储库设为内部存储库。
- 如果帐户不是 托管用户帐户,则可以创建公共存储库。 公共存储库可供互联网上的每个人访问。
- 私有仓库仅可供您、您明确与其共享访问权限的人访问,而对于组织仓库,只有某些组织成员可以访问。
- 所有企业成员均可访问内部仓库。 有关详细信息,请参阅关于内部存储库。
存储库可见性的安全注意事项
公共存储库向所有人公开你的代码库,增加了攻击者可能利用漏洞或访问敏感信息的风险。 可以通过为存储库启用 Dependabot、secret scanning、推送保护和 code scanning 等 GitHub 安全功能来缓解这些风险。 此外,还应向存储库添加一个安全策略(SECURITY.md 文件),其中概述了应如何报告漏洞,以确保有效应对潜在威胁。
尽管专用存储库限制了授权用户的访问,但实施强访问控制、多重身份验证和定期审核以降低风险仍然至关重要。
有关详细信息,请参阅“保护存储库快速入门”。
组织所有者始终有权访问其组织中创建的每个仓库。 有关详细信息,请参阅“组织的存储库角色”。
拥有仓库管理员权限的人可更改现有仓库的可见性。 有关详细信息,请参阅“设置存储库可见性”。
关于内部仓库
如果你的组织属于企业帐户,则可以使用内部存储库在企业内实践“内部开源”。 企业的成员可使用开源方法进行协作,而无需公开共享专有信息。 有关内部源的详细信息,请参阅 在企业中使用内部资源。
注意
仅当你通过企业帐户使用 GitHub Enterprise Cloud 时才能创建内部存储库。 企业帐户是一种单独的帐户类型,使你能够集中管理多个组织。 有关详细信息,请参阅“GitHub 帐户类型”。
组织成员对企业中的所有内部存储库具有读取权限,包括组织中不是其成员的存储库。 内部存储库对 企业外部的人员不可见,包括组织存储库上的外部协作者。 有关详细信息,请参阅 企业中角色的能力 和 组织的存储库角色。
内部存储库是企业帐户所拥有的组织中的所有新存储库的默认设置。
默认情况下,企业成员可以在任何组织中创建内部存储库分支,用户可在其中创建存储库。 此外,组织所有者还能允许用户创建用户帐户所有的分支,并能管理组织的分支策略。 企业所有者可以管理企业中某些或所有组织的分支策略。 有关详细信息,请参阅 管理组织的复刻政策 和 在企业中实施仓库管理策略。
Next steps
以下是一些有用的资源,可帮助你对存储库执行后续操作。
-
[AUTOTITLE](/repositories/creating-and-managing-repositories/best-practices-for-repositories):了解如何最有效地使用存储库。 -
[AUTOTITLE](/repositories/creating-and-managing-repositories/creating-a-new-repository):新建存储库。 -
[AUTOTITLE](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-and-deleting-branches-within-your-repository):了解如何在存储库中创建和删除分支。 -
[AUTOTITLE](/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request):创建拉取请求以提议和协作处理对存储库的更改。