GitLab的使用
GitLab的使用
~ 安装Git客户端
-
<u>https://git-scm.com/downloads</u>,下载Git客户端
~注册GitLab
~添加SSH key
点击右上角用户头像,选择Setting,选择SSH keys,
生成SSH keys,
-
将key文本框填入SSH key,title里填入自定义标题,然后点击Add key
图片1.png
~ 建立开发组
- 点击左上角菜单图标,选择Groups,点击New Group。
- Group path填写组名,Description填写描述,Group avatar选择组头像,Visibility Level通常选择Private,然后点击Create group。
~ 添加组成员,点击新建组xxxx,点击Members,通过搜索文本框中查找成员,并分配权限,通常选择Developer,还可选择成员的有效期,最后点击Add to group进行添加。
~建立工程
1.点击左上角菜单按钮,选择Projects,点击New project
2.Project path通常选择开发组名,Project Name填写工程名称,Visibility Level 通常选择Private,点击Create project进行保存
图片2.png
~ 上传工程代码,具体git命令:
>git remote add origin <u>git@192.168.199.213:xxxx</u>(组名)/xxxx(工程名).git
>git commit
$>git push origin master
一、 通过SourceTree管理GitLab
- SourceTree下载地址:
Windows: <u>http://downloads.atlassian.com/software/sourcetree/windows/SourceTreeSetup_1.6.21.exe</u>
Mac:
<u>http://downloads.atlassian.com/software/sourcetree/SourceTree_2.0.5.3.dmg</u> - 安装SourceTree到本地并运行
- 克隆仓库,源路径填写<u>git@192.168.199.213:xxxx</u>(组名)/xxxx(工程名).git,目标路径填写本地储存路径,点击克隆
4.拉取代码,打开新克隆工程,点击工具栏中拉取按钮
5.提交代码到本地仓库,点击工具栏中提交按钮
6.推送代码到远程仓库,点击工具栏中推送按钮
~ MAC下生成和添加SSH keys
生成SSH keys方法:
打开终端, ls -a ~/.ssh 通过搜索目录
id_rsa //私钥
id_rsa.pub //公钥
打开 id_rsa.pub文件 里面就有需要的ssh key。
打开终端:
1.查找本地是否有.ssh文件: cat ~/.ssh/id_rsa.pub
如果有的可以删除
2.创建ssh key: $ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/1sujia/.ssh/id_rsa):
Created directory '/Users/1sujia/.ssh'. 注:这个什么也不要输入,直接按回车
Enter passphrase (empty for no passphrase): 注:输入密码
Enter same passphrase again: 注:输入密码
Your identification has been saved in /Users/1sujia/.ssh/id_rsa.
Your public key has been saved in /Users/1sujia/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:0SiX7sis2WgYFstytkqel3Z5lNoqO9R+W4FM8KAGYDs GitLab
The key's randomart image is:
+---[RSA 4096]----+
|oo o |
|. o . + + |
| E o .o= . |
| + o+.. |
| . o. oS. |
|. B. + = . |
| .+o O .. |
|o +.X +. |
|.+ooO.=.. |
+----[SHA256]-----+
3.拷贝SSH key
WangWiFi:~ 1sujia$ pbcopy < ~/.ssh/id_rsa.pub
-
粘贴到这里
点击右上角用户头像,选择Setting,选择SSH keys,
将key文本框填入SSH key,title里填入自定义标题,然后点击Add key
图片1.png
用户 / User
运维同学会为大家创建好GitLab用户并设置初始密码,请各位首次登录后修改密码,未来也请按下述要求设置自己的账号:
- 用户名 / Username:使用姓名全拼,全小写,中间没有空格
- 邮箱 / Email:使用公司邮箱
- 显示名 / Name:使用姓名全拼,姓、名首字母分别大写,中间一个空格
例:
Username: zhuhaomin
Email: zhuhaomin@we.com
Name: Zhu Haomin
组 / Group
在GitLab中组就是我们现实中的项目团队或职能团队,如:移动端组、前端组、后端组(尽管业务权责不同,但为促进后端开发同学形成统一标准和规范,后端不再做更细的拆分)、QA组、基础设施组、运维部,请按下述规范创建组:
- 名称及路径 / Group path:使用小写英文(不知道该起什么名字的来可以跟皓珉确认),单词之间用“-”连接
- 描述 / Description:中文描述,简单说明组的职能,各团队也可发挥想象力写个个性化的描述
- 头像 / Group avatar:可以上传本组头像
- 可见等级 / Visibility Level:请选择Internal,即GitLab内部用户可见;请不要选择Private或Public
例:
Group path: we-tech-inf
Description: W.E.Tech基础设施团队,为上层服务提供基础服务(如消息通知)及中间件
Visibility level: Internal
项目 / Project
通常来讲创建项目即我们的独立代码维护单元,当开发新的“独立”业务系统时,请相关组负责创建项目,创建时请遵循下述规范:
- 名称及路径 / Project path:使用小写英文(不知道该起什么名字的来可以跟皓珉确认),单词之间用“-”连接
- 描述 / Description
- 可见等级 / Visibility Level:请选择Private,即本组用户可见(出于安全考虑,我们践行最小权限原则,如果项目代码有必要向其他GitLab用户共享,请通过设置Project组间共享的功能实现,并设置好访问级别)
Project name: message-center
Project description: 实现消息推送、短信、邮件等用户触达功能,为服务层提供底层基础设施
Visibility level: Private
文档
每个包含代码的项目都应有相应的文档,可以分为下述两个位置:
- README.md:与代码一起维护,作用是
- 项目的简要说明
- 重要文档的Shortcut,一般指向Wiki中的文档,可参考welcome的README.md
- Wiki:项目相关的所有文档,包括但不限于
- 团队成员介绍
- 系统描述文档
几点注意:
- 文档命名,请使用小写英文,单词间用“-”连接
- GitLab中的Wiki也是使用git管理的,所以墙裂推荐通过git像管理代码一样管理Wiki中的项目文档
- 不同团队可能有不同的设计原则、代码规范、最佳实践等文档,这部分文档请放在we-tech/welcome项目的Wiki中,不要直接散布在各个项目中
- 请使用Markdown编辑提交GitLab中的文档,推荐:
Git 终端命令
//克隆git仓库
git clone git@gitlab.we.com:we-tech-iOS/investment.git
//
git remote 不带参数,列出已经存在的远程分支
git remote
origin
git remote -v 列出详细信息,在每一个名字后面列出其远程url
git remote -v
origin git@gitlab.we.com:we-tech-iOS/investment.git (fetch)
origin git@gitlab.we.com:we-tech-iOS/investment.git (push)
git remote add name url 在url创建名字为name的仓库
git remote add gitOrigin git@gitlab.we.com:we-tech-iOS/investment.git
git remote rm origin 删除名称为origin的远程仓库
// git branch
git branch 列出本地已经存在的分支
git branch -r 列出远程已经存在的分支
git branch -a 列出本地和远程已经存在的分支
git branch name 创建一个新的名为name的分支,并不切换分支
git branch -m oldbranch newbranch 重命名分支
git branch -d branch name 删除
git checkout name 切换分支
//
vim 文件名 用文本编辑器打开某个文件
git status 查看当前分支
git clean -fx
git log
git pull
git pull origin ***
git push
git push -f origin feature/更改帮助中心url 强制将本地分支推送到远程分支
git branch
git checkout -b
cd /Users/rrd/investment
git pull
git status
git reset --hard
git log
git fetch
git statis
git clean -fdx
git reset --hard origin/development