Projects

Projects

在 GitLab 中,您可以创建用于托管代码库的项目,将其用作问题跟踪器,在代码上进行协作,并使用内置的 GitLab CI / CD 持续构建,测试和部署应用程序.

您可以公开,内部或私有使用您的项目. GitLab 不限制您创建的私人项目的数量.

在 GitLab 中创建项目时,您将可以使用大量 :

Repositories:

  • 问题跟踪器 :与您的团队讨论问题内的实现
    • :组织工作流程并确定其优先级
    • 多个发行板 :允许您的团队为同一项目创建自己的工作流(发行板)
  • :将代码托管在完全集成的平台中
    • 受保护的分支机构 :防止协作者弄乱历史记录或在未经审查的情况下推送代码
    • :控制谁有权创建标签,并防止意外更新或删除
    • 储存库镜​​像
    • :使用 GPG 签署您的提交
    • 部署令牌 :管理基于项目的部署令牌,这些令牌允许永久访问存储库和 Container Registry.

发出和合并请求:

  • 问题跟踪器 :与您的团队讨论问题内的实现
    • :组织工作流程并确定其优先级
    • 多个发行板 :允许您的团队为同一项目创建自己的工作流(发行板)
  • :应用您的分支策略并获得团队的审查
  • 标签 :按标签整理问题并合并请求
  • :跟踪估计在完成问题或合并请求上花费的时间和时间
  • 里程碑 :朝着目标日期迈进
  • :为项目定义特定于上下文的模板,并为您的项目合并请求描述字段
  • 斜杠命令(快速操作) :针对问题或合并请求的常见操作的文本快捷方式
  • :自动完成对用户,组,问题,合并请求和其他 GitLab 元素的引用.
  • Web IDE

亚搏体育 app CI / CD:

  • :GitLab 内置的持续集成,交付和部署工具
    • :开箱即用地构建和推送 Docker 映像
    • 自动部署 :配置 GitLab CI / CD 以自动设置应用程序的部署
    • 管道 :从 UI 配置和可视化 GitLab CI / CD 管道
      • :计划管道以在选定的时间开始
      • 管道图 :通过 UI 查看整个管道
      • :定义,浏览和下载作业工件
      • 管道设置 :设置 Git 策略(选择从作业中的 GitLab 提取存储库的默认方式),超时(定义可以运行作业的最长时间(以分钟为 )) .gitlab-ci.yml自定义路径,测试覆盖率分析,管道的可见性等
    • :将您的 GitLab 项目与 Kubernetes 集群连接
    • 功能标志 :功能标志允许您通过动态切换某些功能来以不同的方式发布项目
  • :使用GitLab Pages构建,测试和部署您的静态网站

其他特性:

  • :在集成的 Wiki 中记录您的 GitLab 项目.
  • 片段 :存储,共享和协作代码片段.
  • :查看您的开发生命周期.
  • 见解 :配置对您的项目至关重要的见解.
  • :安全仪表板.
  • 语法突出显示 :一种自定义代码块的替代方法,它替代了 GitLab 的默认语言选择.
  • :项目概述的徽章.
  • 发行版 :一种跟踪项目中可交付成果的方式,可作为源,构建输出,其他元数据和与代码的发行版本相关的其他工件的快照.
  • :您在 GitLab 中的私人 Conan 存储库.
  • Maven 软件包 :您在 GitLab 中的私有 Maven 存储库.
  • :您在 GitLab 中的私有 NPM 软件包注册表.
  • 代码所有者 :为某些文件指定代码所有者
  • :批准和拒绝项目的许可证.
  • 依赖项列表 :查看项目依赖项.
  • :要求使您可以创建标准来检查产品.
  • 静态站点编辑器 :无需事先了解代码库或 Git 命令,即可在静态网站上快速编辑内容.
  • :代码导航功能.

将您的项目与 Jira,Mattermost,Kubernetes,Slack 等进行 .

New project

了解如何在 GitLab 中 .

Fork a project

您可以 ,以便:

  • 通过分叉项目并创建从分支到上游项目的合并请求来进行代码协作
  • 分叉一个示例项目以在其顶部工作

Star a project

您可以为项目加注星标,以使其更容易找到您经常使用的项目. 项目拥有的明星数量可以表明其受欢迎程度.

为项目加注星标:

  1. 在页面的右上角,点击星标 .

要查看已加星标的项目,请执行以下操作:

  1. 单击导航栏中的项目 .
  2. Click 已加星标的项目.
  3. GitLab 显示有关已加星标项目的信息,包括:

    • 项目描述,包括名称,描述和图标
    • 已为该项目加注星标的次数
    • Number of times this project has been forked
    • 打开的合并请求数
    • 未解决问题的数量

您可以探索 GitLab 上可用的其他流行项目. 探索项目:

  1. 单击导航栏中的项目 .
  2. Click 探索项目.

Project settings

将项目的可见性级别和访问级别设置为各个页面,并执行诸如归档,重命名或传输项目的操作.

通读有关项目设置的文档.

Import or export a project

要删除项目,请首先导航到该项目的主页.

  1. 导航至设置>常规 .
  2. 展开高级部分.
  3. 向下滚动到” 删除项目”部分.
  4. Click 移除专案
  5. 通过输入所需的文本来确认此操作.

Delayed removal

默认情况下,单击以删除项目后会延迟 7 天. 管理员可以在这段时间内恢复项目. 管理员可以更改此延迟.

管理员可以查看所有待删除项目. 如果您是管理员,请转到顶部导航栏,单击” 项目”>”您的项目” ,然后选择”已删除的项目”选项卡. 管理员可以从此选项卡还原任何项目.

CI/CD for external repositories

您可以将存储库作为 CI / CD 项目连接,而不是将存储库直接导入到 GitLab.

通读CI / CD 上有关外部存储库的文档.

Project members

了解如何将成员添加到您的项目中 .

Project activity

要查看项目的活动,请导航至项目概述>活动 . 在此处,您可以单击选项卡以查看所有活动,或查看按Push 事件Merge 事件Issue 事件CommentTeamWiki过滤的活动 .

Leave a project

当项目属于组时(在 ), 离开项目将仅显示在项目的仪表板上. 如果您选择退出项目,那么您将不再是项目成员,因此无法参与.

项目的登录页面根据项目的可见性设置和用户权限显示不同的信息.

对于公共项目以及有权查看该项目代码的内部和私有项目的成员:

  • 显示内容(如果有),然后显示项目存储库中的目录列表.
  • 如果项目不包含这些文件中的任何一个,则访问者将看到存储库的文件和目录列表.

对于没有权限查看项目代码的用户:

  • 显示维基主页(如果有).
  • 显示项目中的问题列表.

Redirects when changing repository paths

当存储库路径更改时,从旧位置平稳过渡到新位置至关重要. GitLab 提供两种重定向:Web UI 和 Git 推/拉重定向.

根据情况,可能会有所不同.

  • 名称空间及其下的任何内容(例如项目)的现有 Web URL 将重定向到新 URL.
  • 从 GitLab 10.3 开始,命名空间下项目的现有 Git 远程 URL 将重定向到新的远程 URL. 每次将其推/拉到更改位置的存储库时,都会显示一条警告消息,提示您更新遥控器,而不是拒绝操作. 这意味着在重命名后,任何自动化脚本或 Git 客户端将继续工作,从而使任何过渡都更加顺畅.
  • The redirects will be available as long as the original path is not claimed by another group, user or project.

Use your project as a Go package

任何项目都可以用作 Go 包. GitLab 会正确响应go getgodoc.org发现请求,包括go-import和元标记.

私有项目(包括子组中的项目)可以用作 Go 包,但可能需要进行配置才能正常工作. 无论身份验证或授权如何,GitLab 都会正确响应以go get 不在子组中的项目的发现请求. 要使用子组中的私有项目作为 Go 包,必须进行身份验证 . 否则,GitLab 会将子组中私有项目的路径截断到前两个段,从而导致go get失败.

GitLab 实现了自己的 Go 代理. 此功能必须由管理员启用,并且需要其他配置. 请参阅 .

In Go 1.12 and later, Go queries module proxies and checksum databases in the process of fetching a module. This can be selectively disabled with GOPRIVATE (disable both), (disable proxy queries), and GONOSUMDB (disable checksum queries).

GONOPROXYGONOSUMDB是 Go 模块和 Go 模块前缀的逗号分隔列表. 例如, GOPRIVATE=gitlab.example.com/my/private/project将禁用对该项目的查询,而GOPRIVATE=gitlab.example.com将禁用GOPRIVATE=gitlab.example.com 所有项目的查询. 如果模块名称或其前缀出现在GOPRIVATEGONOPROXY ,则 Go 不会查询模块代理. 如果模块名称或其前缀出现在GONOPRIVATEGONOSUMDB ,则 Go 不会查询校验和数据库.

Authenticate Go requests

要验证对 Go 私有项目的请求,请在密码字段中使用.netrc文件和 . 仅当可以通过 HTTPS 访问您的 GitLab 实例时,此方法才有效. go命令不会通过不安全的连接传输凭据. 这将验证 Go 直接发出的所有 HTTPS 请求,但不会验证通过 Git 发出的请求.

例如:

注意:在 Windows 上,Go 读取而不是~/.netrc .

Authenticate Git fetches

如果无法从代理中获取模块,Go 将退回到使用 Git(对于 GitLab 项目). Git 将使用.netrc来认证请求. 另外,可以将 Git 配置为在请求 URL 中嵌入特定的凭据,或者使用 SSH 代替 HTTPS(因为 Go 始终使用 HTTPS 来获取 Git 存储库):

  1. # embed credentials in any request to GitLab.com:
  2. git config --global url."https://${user}:${personal_access_token}@gitlab.example.com".insteadOf "https://gitlab.example.com"
  3. # use SSH instead of HTTPS:
  4. git config --global url."git@gitlab.example.com".insteadOf "https://gitlab.example.com"

Access project page with project ID

在 GitLab 11.8 中引入 .

要使用项目 ID 从 GitLab UI 快速访问项目,请在浏览器或其他访问项目的工具中访问/projects/:id URL.

in GitLab Premium 12.1.

将存储库迁移到 GitLab 并被其他系统访问时,能够使用相同的名称访问它们非常有用,尤其是当它们很多时. 它降低了在大量系统中更改大量 Git URL 的风险.

manbetx 客户端打不开提供了功能来帮助这一点. 在 GitLab 中,通常使用名称空间和项目名称访问存储库. 也可以通过项目别名访问它们. 此功能仅在通过 SSH 的 Git 上可用.

项目别名只能通过 API 创建,并且只能由 GitLab 管理员创建. 有关更多详细信息,请遵循 .

Project APIs

您的项目可以使用许多 :