从 2020 年秋季学期开始,MTU MOST 将所有源代码(使用 git 进行版本控制)保存在Gitlab上。此方法页面列出了开始使用 Gitlab 的过程,包括帐户创建、存储库初始化或重定位以及链接到OSF

简介

混帐是一个分布式版本控制系统,旨在管理对文本文件(例如源代码)的更改。Git 不是备份整个文件,而是维护源文件中特定行的更改历史记录。以这种方式,它能够跟踪代码库的长期历史,而不会浪费内存来跟踪未更改的代码部分。每次更改一段代码时,这些更改都会通过“提交消息”和“差异”“提交”到 Git - 准确显示所做更改的可视化。这些更改可以在几个充当专门历史学家的“分支”上进行跟踪 - 一个保留工作的历史,可发布的代码(发布);和其他人在错误修复或功能实施期间保留更改历史记录。按照惯例,50 个字符(参见Atomic CommitsWhy Atomic Commits),每个分支包含一个完整的功能或错误修复。

通过设置“远程”,可以在多个开发人员之间共享/分发 Git 历史记录。这是一个保存代码历史的中央服务器。其他人可以访问该服务器以获取代码的副本,并且他们可以将他们的贡献推送到远程以便与其他人共享。这允许多人在同一个代码项目上工作而无需互相等待,并且它可以在多个地方备份版本控制历史——在每个用户的机器上,以及在远程服务器上。更高级的用户可以利用 git 和 remotes 中的功能,这些功能允许他们在允许提交或推送代码之前测试代码,强制执行代码的样式指南,并干净地管理在代码库的几个不同区域中完成的工作。

Gitlab 就是这样一种服务器,也是 MOST 用来存储代码的服务器。此处未涵盖管理 git 存储库的最佳实践,但此页面中的许多链接提供了这方面的有用信息。

Create an Account

Gitlab创建一个账号。当询问谁将使用 Gitlab 时,选择“我的组织或公司”。

要访问 Gitlab 上的小组,请联系 Pearce 博士。

安全

建议您在您的帐户上启用 2 因素身份验证。在右上角,点击您的头像,然后转到“设置 > 帐户”以启用 2fA。

在您的计算机上使用 Git 与 Gitlab 交互时,您可以向 git 提供您的凭据(用户名和密码),或使用 SSH 密钥。SSH 密钥基本上是由算法生成的凭据,存储在您的设备上并特定于您的设备。您向 Gitlab 提供一半密钥(`Settings > SSH Keys`),然后您的计算机使用另一半通过 Gitlab 验证自己。这意味着您不必记住密码,但如果黑客访问您的计算机,您的密钥可能会被盗。在此处阅读有关凭据与 SSH 密钥的更多信息。

Linux 用户直接在终端中按照Gitlab 的说明创建 SSH 密钥。Windows 用户(那些更倾向于使用 GUI 而不是命令行的用户)应该使用Sourcetree,它可以生成 SSH 密钥(`Tools > Create or Import SSH Keys`)或存储凭据。创建密钥后,根据他们的说明将公共部分提供给 gitlab 。

Creating a Repository

要开始使用 MOST 的存储库,请转到我们在 Gitlab 上的组并创建一个新项目。Gitlab 很好地为要创建的所有信息片段提供了提示,包括“LICENSE”、“README.md”、“CHANGELOG”等。要获取存储库的本地副本,请克隆它。右上角会有一个按钮来帮助您获取必要的信息。

目前尚未创建 MOST 组的标准或存储库模板。

传输存储库

无论是将已有的本地仓库迁移到 Gitlab 上,还是从 Github 之类的转过来,过程本质上是一样的。首先,按照#Creating a Repository中的步骤操作,确保不生成任何文件(Gitlab 将提供创建 README)。然后,空存储库将准确说明在终端中使用哪些命令,以便将新存储库设置为您的“来源”。要在 Sourcetree 中执行此操作,请按照他们的说明进行操作。

链接到 OSF Integrations

要将存储库链接到 OSF,您需要授予 OSF 对您的 Gitlab 帐户的“应用程序访问权限”。去做这个:

  1. Gitlab
  2. 转到您的用户设置并选择“访问令牌”
  3. 输入特定于您授予访问权限的 OSF 存储库的名称。
  4. 将到期日期留空,除非您有理由希望 OSF 失去访问权限。
  5. 检查以下权限:
    • `read_user`
    • `read_api`
    • `read_repository`
    • 其他的应该不是必需的,因为 OSF 无法修改您的存储库,也不应该。仅当您和 Pearce 博士认为有必要时才勾选其他方框。选中这些框将授予 OSF 访问公共 * 和 * 私有存储库的权限。
  6. 创建令牌。您必须立即复制代码。
  7. 根据他们的程序向 OSF 存储库提供访问令牌(如果该链接已损坏,请检查存储库中的“Add Ons”选项卡)。
    • 在撰写本文时,您必须提供对 `gitlab.com` 的访问权限,而不是特定的存储库。这会将您的 Gitlab 帐户连接到您的个人 OSF 帐户,然后您授予 OSF 存储库访问权限。保存后,您选择 OSF 页面可以访问的存储库。允许更改 OSF 可以访问的存储库的用户范围还有待测试。

好资源

Cookies help us deliver our services. By using our services, you agree to our use of cookies.