现在我们来设置我们GitLab上的SSH:
1、某人需要登陆gitlab,需要首先自己注册账号
2.首先我们在git中使用‘’$ ssh-****** -t rsa -C ‘[email protected]email.com’.然后会有让你设置密码的几条语句,我们直接按回车设置成空,然后它会返回一个图(我也不知道有什用),在图上面你能找到一个文件.ssh的地址,然后在你的电脑上找到这个地址,然后打开里面的公钥文件复制。
3.使用个人账号登陆自己的GitLab网页,进入个人设置的settings选项
通过下面的操作添加自己的公钥
4、项目管理员登陆
5、选择要开放给这个用户的项目
6、选择项目setting下面members
7、按照如下操作添加之前注册的用户
注意permission的选择会影响此用户对项目的操作权限
下面列表是不同权限对应的操作权限(两个表格来自不同的文章)
Project
表一:The following table depicts the various user permission levels in a project.
| Action | Guest | Reporter | Developer | Master | Owner |
|---|---|---|---|---|---|
| Create new issue | ? | ? | ? | ? | ? |
| Create confidential issue | ? | ? | ? | ? | ? |
| View confidential issues | (?) 1 | ? | ? | ? | ? |
| Leave comments | ? | ? | ? | ? | ? |
| See a list of jobs | ? 2 | ? | ? | ? | ? |
| See a job log | ? 2 | ? | ? | ? | ? |
| Download and browse job artifacts | ? 2 | ? | ? | ? | ? |
| View wiki pages | ? | ? | ? | ? | ? |
| Pull project code | ? | ? | ? | ? | |
| Download project | ? | ? | ? | ? | |
| Create code snippets | ? | ? | ? | ? | |
| Manage issue tracker | ? | ? | ? | ? | |
| Manage labels | ? | ? | ? | ? | |
| See a commit status | ? | ? | ? | ? | |
| See a container registry | ? | ? | ? | ? | |
| See environments | ? | ? | ? | ? | |
| Create new environments | ? | ? | ? | ||
| Use environment terminals | ? | ? | |||
| Stop environments | ? | ? | ? | ||
| See a list of merge requests | ? | ? | ? | ? | |
| Manage/Accept merge requests | ? | ? | ? | ||
| Create new merge request | ? | ? | ? | ||
| Create new branches | ? | ? | ? | ||
| Push to non-protected branches | ? | ? | ? | ||
| Force push to non-protected branches | ? | ? | ? | ||
| Remove non-protected branches | ? | ? | ? | ||
| Add tags | ? | ? | ? | ||
| Write a wiki | ? | ? | ? | ||
| Cancel and retry jobs | ? | ? | ? | ||
| Create or update commit status | ? | ? | ? | ||
| Update a container registry | ? | ? | ? | ||
| Remove a container registry image | ? | ? | ? | ||
| Create new milestones | ? | ? | |||
| Add new team members | ? | ? | |||
| Push to protected branches | ? | ? | |||
| Enable/disable branch protection | ? | ? | |||
| Turn on/off protected branch push for devs | ? | ? | |||
| Rewrite/remove Git tags | ? | ? | |||
| Edit project | ? | ? | |||
| Add deploy keys to project | ? | ? | |||
| Configure project hooks | ? | ? | |||
| Manage runners | ? | ? | |||
| Manage job triggers | ? | ? | |||
| Manage variables | ? | ? | |||
| Manage pages | ? | ? | |||
| Manage pages domains and certificates | ? | ? | |||
| Switch visibility level | ? | ||||
| Transfer project to another namespace | ? | ||||
| Remove project | ? | ||||
| Force push to protected branches 3 | |||||
| Remove protected branches 3 | |||||
| Remove pages | ? |
表二:下表显示了不同类型用户的可用权限级别:
| 编号 | Guest | Reporter | Developer | Master |
|---|---|---|---|---|
| 1 | 创建新问题 | 创建新问题 | 创建新问题 | 创建新问题 |
| 2 | 可发表评论 | 可发表评论 | 可发表评论 | 可发表评论 |
| 3 | 能够在项目墙上写内容 | 能够在项目墙上写内容 | 能够在项目墙上写内容 | 能够在项目墙上写内容 |
| 4 | — | 能够拉取项目代码 | 能够拉取项目代码 | 能够拉取项目代码 |
| 5 | — | 可下载项目 | 可下载项目 | 可下载项目 |
| 6 | — | 能够编写代码片段 | 能够编写代码片段 | 能够编写代码片段 |
| 7 | — | — | 创建新的合并请求 | 创建新的合并请求 |
| 8 | — | — | 创建新的分支 | 创建新的分支 |
| 9 | — | — | 推送并移除不受保护的分支 | 推送并移除不受保护的分支 |
| 10 | — | — | 包含标签 | 包含标签 |
| 11 | — | — | 可创建,编辑,删除项目里程碑 | 可以创建,编辑,删除项目里程碑 |
| 12 | — | — | 可创建或更新提交状态 | 可创建或更新提交状态 |
| 13 | — | — | 写一个维基 | 写一个维基 |
| 14 | — | — | 创建新的环境 | 创建新的环境 |
| 15 | — | — | 取消并重试作业 | 取消并重试作业 |
| 16 | — | — | 更新并删除注册表映像 | 更新并删除注册表映像 |
| 17 | — | — | — | 可添加新的团队成员 |
| 18 | — | — | — | 推动并移除受保护的分支 |
| 19 | — | — | — | 可编辑项目 |
| 20 | — | — | — | 可以管理runner,runner触发器和变量 |
| 21 | — | — | — | 将部署**添加到项目 |
| 22 | — | — | — | 能够管理群集 |
| 23 | — | — | — | 配置项目钩件 |
| 24 | — | — | — | 可以启用/禁用分支保护 |
| 25 | — | — | — | 能够重写或删除Git标签 |
//原文出自【易百教程】,商业转载请联系作者获得授权,非商业转载请保留原文链接:https://www.yiibai.com/gitlab/gitlab_user_permissions.html