- 查看项目
- 浏览主题
- 创建项目
- 创建空白项目
- 从内置模板创建项目
- 从自定义模板创建项目
- 从 HIPAA 审计协议模板创建项目
- 推送创建一个新项目
- 星标一个项目
- 查看星标项目
- 查看个人项目
- 删除项目
- 查看待删除的项目
- 查看项目动态
- 在项目中搜索
- 离开一个项目
- 使用项目作为 Go 包
管理项目
极狐GitLab 中的大部分工作都是在项目中完成的。文件和代码保存在项目中,大部分功能都在项目范围内。
查看项目
要查看项目,请在顶部栏中选择 主菜单 > 项目 > 查看所有项目。
谁可以查看项目页面
当您选择一个项目时,项目登录页面会显示项目内容。
对于公开项目,以及有权查看项目代码的内部和私有项目成员,项目登陆页面显示:
-
README
或索引文件。 - 项目仓库中的目录列表。
对于没有权限查看项目代码的用户,登陆页面显示:
- wiki 主页。
- 项目中的议题列表。
使用项目 ID 访问项目页面
要使用项目 ID 从 GitLab UI 访问项目,请在浏览器或其他访问项目的工具中访问 /projects/:id
URL。
浏览主题
要浏览项目主题:
- 在顶部栏上,选择 主菜单 > 项目 > 查看所有项目。
- 选择 浏览主题 选项卡。
- 要查看与某个主题相关的项目,请选择一个主题。
浏览主题选项卡显示按相关项目数量排序的主题列表。 要查看与主题关联的项目,请从列表中选择一个主题。
您可以在项目设置页面上为项目分配主题。
如果您是实例管理员,则可以从管理中心的主题页面,管理所有项目主题。
创建项目
要在极狐GitLab 中创建项目:
- 在顶部栏上,选择 主菜单 > 项目 > 查看所有项目。
- 在页面右侧,选择 新建项目。
- 选择一个选项:
创建空白项目
要创建空白项目:
- 在顶部栏上,选择 主菜单 > 项目 > 查看所有项目。
- 在页面右侧,选择 新建项目。
- 选择 创建空白项目。
- 输入项目详情:
- 在 项目名称 字段中,输入您的项目名称。您不能在项目名称的开头或结尾使用特殊字符。
- 在 项目标识串 字段中,输入项目的路径。极狐GitLab 实例使用标识串作为项目的 URL 路径。要更改标识串,首先输入项目名称,然后更改标识串。
- 在 项目部署目标(可选) 字段中,选择项目的部署目标。
- 要为用户修改项目的查看和访问权限,请更改 可见性级别。
- 要创建 README 文件以便初始化 Git 仓库、具有默认分支并可以克隆,请选择 使用自述文件初始化仓库。
- 要分析项目中的源代码是否存在已知安全漏洞,请选择 启用静态应用程序安全测试 (SAST)。
- 选择 创建项目。
从内置模板创建项目
要从内置模板创建项目:
- 在顶部栏上,选择 主菜单 > 项目 > 查看所有项目。
- 在页面右侧,选择 新建项目。
- 选择 从模板创建。
- 选择 内置 选项卡。
- 从模板列表中:
- 要查看模板的预览,请选择 预览。
- 要为项目使用模板,请选择 使用模板。
- 输入项目详情:
- 在 项目名称 字段中,输入您的项目名称。您不能在项目名称的开头或结尾使用特殊字符。
- 在 项目标识串 字段中,输入项目的路径。极狐GitLab 实例使用标识串作为项目的 URL 路径。要更改标识串,首先输入项目名称,然后更改标识串。
- 要创建 README 文件以便初始化 Git 仓库、具有默认分支并可以克隆,请选择 使用自述文件初始化仓库。
- 要分析项目中的源代码是否存在已知安全漏洞,请选择 启用静态应用程序安全测试 (SAST)。
- 选择 创建项目。
从自定义模板创建项目
自定义项目模板可在以下位置获得:
- 实例级别
- 群组级别
- 在顶部栏上,选择 主菜单 > 项目 > 查看所有项目。
- 在页面右侧,选择 新建项目。
- 选择 从模板创建。
- 选择 实例 或 群组 选项卡。
- 从模板列表中:
- 要查看模板的预览,请选择 预览。
- 要为项目使用模板,请选择 使用模板。
- 输入项目详情:
- 在 项目名称 字段中,输入您的项目名称。您不能在项目名称的开头或结尾使用特殊字符。
- 在 项目标识串 字段中,输入项目的路径。极狐GitLab 实例使用标识串作为项目的 URL 路径。要更改标识串,首先输入项目名称,然后更改标识串。
- 要创建 README 文件以便初始化 Git 仓库、具有默认分支并可以克隆,请选择 使用自述文件初始化仓库。
- 要分析项目中的源代码是否存在已知安全漏洞,请选择 启用静态应用程序安全测试 (SAST)。
- 选择 创建项目。
从 HIPAA 审计协议模板创建项目
HIPAA 审计协议模板包含美国卫生与公共服务部发布的 HIPAA 审计协议中的审计查询问题。
从 HIPAA 审计协议模板创建项目:
- 在顶部栏上,选择 主菜单 > 项目 > 查看所有项目。
- 在页面右侧,选择 新建项目。
- 选择 从模板创建。
- 选择 内置选项卡。
- 找到 HIPAA 审计协议 模板:
- 要查看模板的预览,请选择 预览。
- 要为项目使用模板,请选择 使用模板。
- 输入项目详情:
- 在 项目名称 字段中,输入您的项目名称。您不能在项目名称的开头或结尾使用特殊字符。
- 在 项目标识串 字段中,输入项目的路径。极狐GitLab 实例使用标识串作为项目的 URL 路径。要更改标识串,首先输入项目名称,然后更改标识串。
- 要创建 README 文件以便初始化 Git 仓库、具有默认分支并可以克隆,请选择 使用自述文件初始化仓库。
- 要分析项目中的源代码是否存在已知安全漏洞,请选择 启用静态应用程序安全测试 (SAST)。
- 选择 创建项目。
推送创建一个新项目
使用 git push
将本地项目仓库推送到极狐GitLab。推送仓库后,极狐GitLab 在您选择的命名空间中创建您的项目。
您不能使用 git push
来创建具有以下项目路径的项目:
- 以前使用过。
- 已重命名。
以前使用的项目路径有一个重定向,重定向会导致推送尝试将请求重定向到重命名的项目位置,而不是创建新项目。要为以前使用过或重命名的项目创建新项目,请使用 UI 或项目 API。
先决条件:
- 要使用 SSH 推送,您必须有一个 SSH 密钥,添加到您的极狐GitLab 帐户。
-
您必须具有向命名空间添加新项目的权限。要检查您是否有权限:
- 在顶部栏上,选择 主菜单 > 群组,并找到您的群组。
- 确认右上角有 新建项目。如果您需要权限,请联系您的 GitLab 管理员。
要推送您的仓库并创建一个项目:
- 使用 SSH 或 HTTPS 推送:
-
使用 SSH 推送:
git push --set-upstream git@gitlab.example.com:namespace/myproject.git master
-
使用 HTTPS 推送:
git push --set-upstream https://gitlab.example.com/namespace/myproject.git master
- 对于
gitlab.example.com
,使用托管 Git 仓库的机器的域名。 - 对于
namespace
,使用您的命名空间的名称。 - 对于
myproject
,使用你的项目名称。 - 可选。要导出现有的仓库标签,请将
--tags
标志附加到您的git push
命令。
-
- 可选。 要配置远端:
shell git remote add origin https://gitlab.example.com/namespace/myproject.git
推送完成后,系统会显示以下消息:
remote: The private project namespace/myproject was created.
要查看您的新项目,请转到 https://gitlab.example.com/namespace/myproject
。
默认情况下,您项目的可见性设置为 私有。要更改项目可见性,请调整您的项目设置。
星标一个项目
您可以为经常使用的项目添加星号,以便更容易找到它们。
给项目加星:
- 在顶部栏上,选择 主菜单 > 项目,并找到您的项目。
- 在页面右上角,选择 星标。
查看星标项目
- 在顶部栏上,选择 主菜单 > 项目 > 查看所有项目。
- 选择 星标项目 选项卡。
-
系统显示有关您已加星标的项目的信息,包括:
- 项目描述,包括名称、描述和图标。
- 该项目被星标的次数。
- 该项目被派生的次数。
- 打开合并请求的数量。
- 开放议题的数量。
查看个人项目
个人项目是在您的个人命名空间下创建的项目。
例如,如果您使用用户名 alex
创建一个帐户,并在您的用户名下创建一个名为 my-project
的项目,则该项目将创建在 https://gitlab.example.com/alex/my-project
。
查看您的个人项目:
- 在顶部栏上,选择 主菜单 > 项目 > 查看所有项目。
- 在 您的项目 选项卡中,选择 个人。
删除项目
删除项目后,个人命名空间中的项目会立即删除。要延迟删除群组中的项目,您可以启用延迟项目删除。
要删除项目:
- 在顶部栏上,选择 主菜单 > 项目 > 查看所有项目,并找到您的项目。
- 选择 设置 > 通用。
- 展开 高级 部分。
- 向下滚动到 删除项目 部分。
- 选择 删除项目。
- 通过填写字段确认此操作。
查看待删除的项目
- 于 14.8 版本中适用于所有用户,功能标志名为
project_owners_list_project_pending_deletion
。默认启用。
当为群组启用延迟项目删除时,该群组中的项目不会立即删除,而只会在延迟后删除。要访问所有待删除项目的列表:
- 在顶部栏上,选择 主菜单 > 项目 > 查看所有项目。
- 选择 待删除 选项卡(在 14.6 及更高版本中)或 已删除项目 选项卡(GitLab 14.5 及更早版本)。
为每个项目列出:
- 项目被标记为删除的时间。
- 计划最终删除项目的时间。
- 一个 还原 链接,可以阻止项目最终被删除。
查看项目动态
要查看项目的动态:
- 在顶部栏上,选择 主菜单 > 项目,并找到您的项目。
- 在左侧边栏上,选择 项目信息 > 动态。
- 选择一个选项卡以查看项目动态的类型。
在项目中搜索
您可以搜索您的项目。
- 在顶部栏上,选择 主菜单。
- 在 搜索您的项目 中,输入项目名称。
系统在您键入时进行过滤。
您还可以查找您已加星标的项目。
您可以按以下方式对项目进行排序:
- 姓名
- 创建日期
- 更新日期
- 所有者
您还可以选择隐藏或显示归档项目。
离开一个项目
如果您离开项目,您将不再是项目成员并且无法做出贡献。
离开项目:
- 在顶部栏上,选择 主菜单 > 项目,并找到您的项目。
- 选择 离开项目。离开项目 选项仅在项目属于群组命名空间下的群组时,才会显示在项目仪表板上。
使用项目作为 Go 包
先决条件:
- 联系您的管理员以启用 GitLab Go Proxy。
- 要将子组中的私有项目用作 Go 包,您必须验证 Go 请求。未经身份验证的 Go 请求会导致
go get
失败。 对于不在子组中的项目,您不需要验证 Go 请求。
要将项目用作 Go 包,请使用 go get
和 godoc.org
发现请求。您可以使用元标签:
验证对私有项目的 Go 请求
先决条件:
- 您的极狐GitLab 实例必须可通过 HTTPS 访问。
- 您必须拥有个人访问令牌,包含
read_api
范围。
要验证 Go 请求,请创建一个 .netrc
文件,其中包含以下信息:
machine gitlab.example.com
login <gitlab_user_name>
password <personal_access_token>
在 Windows 上,Go 读取 ~/_netrc
而不是 ~/.netrc
。
go
命令不会通过不安全的连接传输凭据。它验证 Go 发出的 HTTPS 请求,但不验证通过 Git 发出的请求。
验证 Git 请求
如果 Go 无法从代理获取模块,它会使用 Git。Git 使用 .netrc
文件对请求进行身份验证,但您可以配置其他身份验证方法。
将 Git 配置为:
-
在请求 URL 中嵌入凭据:
git config --global url."https://${user}:${personal_access_token}@gitlab.example.com".insteadOf "https://gitlab.example.com"
-
使用 SSH 而不是 HTTPS:
git config --global url."git@gitlab.example.com".insteadOf "https://gitlab.example.com/"
禁用私有项目的 Go 模块获取
为了获取模块或包,Go 使用环境变量:
GOPRIVATE
GONOPROXY
GONOSUMDB
要禁用获取:
- 禁用
GOPRIVATE
:- 要禁用对一个项目的查询,请禁用
GOPRIVATE=gitlab.example.com/my/private/project
。 - 要禁用 SaaS 上所有项目的查询,请禁用
GOPRIVATE=gitlab.example.com
。
- 要禁用对一个项目的查询,请禁用
- 在
GONOPROXY
中禁用代理查询。 - 禁用
GONOSUMDB
中的校验和查询。 - 如果模块名称或其前缀在GOPRIVATE
或GONOPROXY
中,Go 不会查询模块代理。 - 如果模块名称或其前缀在GONOPRIVATE
或GONOSUMDB
中,Go 不会查询校验和数据库。
从 Geo 次要站点获取 Go 模块
使用 Geo 访问包含次要 Geo 服务器上的 Go 模块的 Git 存储库。
您可以使用 SSH 或 HTTP 访问 Geo 次要服务器。
使用 SSH 访问 Geo 次要服务器
要使用 SSH 访问 Geo 次要服务器:
-
在客户端重新配置 Git 以将主服务器的流量发送到次要服务器:
git config --global url."git@gitlab-secondary.example.com".insteadOf "https://gitlab.example.com" git config --global url."git@gitlab-secondary.example.com".insteadOf "http://gitlab.example.com"
- For
gitlab.example.com
, use the primary site domain name. - For
gitlab-secondary.example.com
, use the secondary site domain name.
- For
-
确保客户端设置为通过 SSH 访问 GitLab 仓库。您可以在主服务器上进行测试,系统会将公钥复制到次要服务器。
go get
请求生成到主 Geo 服务器的 HTTP 流量。当模块下载开始时,insteadOf
配置将流量发送到次要 Geo 服务器。
使用 HTTP 访问 Geo 次要节点
您必须使用复制到次要服务器的持久访问令牌。您不能使用 CI/CD 作业令牌通过 HTTP 获取 Go 模块。
使用 HTTP 访问 Geo 次要服务器:
-
在客户端添加一个 Git
insteadOf
重定向:git config --global url."https://gitlab-secondary.example.com".insteadOf "https://gitlab.example.com"
- 对于
gitlab.example.com
,使用主站点域名。 - 对于
gitlab-secondary.example.com
,使用次要站点域名。
- 对于
-
生成个人访问令牌并在客户端的
~/.netrc
文件中添加凭据:machine gitlab.example.com login USERNAME password TOKEN machine gitlab-secondary.example.com login USERNAME password TOKEN
go get
请求生成到主 Geo 服务器的 HTTP 流量。当模块下载开始时,insteadOf
配置将流量发送到次要 Geo 服务器。