gitlab的使用
gitlab是一个代码仓库,类似于github,只不过gitlab是私有的,一般部署在公司内部的服务器上
网站设置为中文页面
点击右上角的头像,点击弹出框的Preferences菜单,如下图:
打开页面后,往下滑动,找到如下菜单:
设置Language
然后点击页面上的最下方的Save changes按钮,保存变更
保存后,刷新页面,就会显示成中文了
配置SSH秘钥
克隆仓库之前需要先配置SSH秘钥
打开电脑上的git命令行工具
桌面——》鼠标右键,选择Git bash here菜单就会打开
执行cd ~/.ssh,进入ssh目录
再次执行ssh-keygen,碰到的选项直接回车即可,直到生成成功
再次执行命令cat id_rsa.pub,就可以看到公钥了,然后选中再右键copy复制一下公钥(不能使用ctrl+c),后面用到
打开gitlab主页,点击右上角的头像,在点击——偏好设置(菜单项),进入设置页面
进入SSH秘钥设置页面
将刚才复制的公钥,填写到秘钥输入框中,再点击添加秘钥,秘钥就添加成功了
克隆项目到本地
点击网站左上角图标,打开gitlab主页
主页就显示拥有的所有项目
点击我们要用到的项目,进入主页
点击蓝色的克隆按钮,选择 使用SSH克隆,复制链接
在本地工程目录(就是自己电脑工程放置的目录),打开git命令行工具
鼠标右键,选择Git bash here菜单就会打开
输入命令git clone + 复制的仓库链接
git clone git@192.168.1.8:gitlab-instance-77a8ac38/gallery_sun2.git
如果需要指定分支则添加-b指令,此处以dev为例
git clone git@192.168.1.8:gitlab-instance-77a8ac38/gallery_sun2.git -b dev
执行后可能会出现如下场景:
输入yes回车即可
出现done就表示成功了
工程目录就会多一个项目文件夹,就是克隆出来的项目
使用android studio打开此项目
项目的右下角有一个master,表示这是master分支
点击会弹出分支列表
一般master分支是不能修改代码的,公司会指定开发分支,我们需要将本地的代码切换到开发分支,此处已dev为例
在弹出的分支列表中,点击dev分支,会再弹出一个列表
选择checkout,检出代码,这样本地就会切换成dev分支
代码提交
修改代码之后,需要提交到服务器
点击顶部菜单栏的commit菜单
会弹出一个comiit changes对话框
下面截图中的是所有变更的文件,可以选择性的提交
commit message中添加我们提交的备注
最后点击commit按钮 ,成功后再程序左下角会弹出一个提示
此时提交成功了,只是提交到了本地仓库,还没有提交到服务器的远程仓库
需要使用push命令,推送到远程仓库
点击顶部菜单栏的push按钮
弹出一个push对话框,点击push即可
成功后,右下角会有一个提示表示成功了
此时可以在服务器查看到已经提交的记录了
拉取代码
点击向下的箭头,update project按钮 更新代码
更新完重写构建一下
解决冲突
当我们改了一个文件,并且别人也改了且提交到了服务器,我们更新代码的时候就会出现冲突
只有1个冲突文件时,会自动弹出一个冲突窗口
左中右共分为三个部分:
左边:本地还没有提交的代码,也就是我们修改的代码
右边:服务器的代码,我们拉下来的代码
中间:合并之后的结果
高亮显示的部分,表示这部分代码是更改的,有冲突的,需要处理
有2个按钮:
>> <<这2个之一:表示应用此代码,保存这个更改
x:放弃这个更改
当点了2个按钮之一,就会取消高亮,表示这个冲突已经处理
一般处理情况:都点击>>或者<< 本地的更新和服务器的更改都保存下来
当我们处理完之后,会在顶部弹出一个消息,表示这个文件里面的冲突已经全部解决
这时我们点击下边的apply按钮,即可完成冲突处理
如果我们没有处理完成,点击apply会弹出如下窗口:
表示还有冲突没有处理,点击x关闭这个窗口,解决完冲突后再点apply
点击apply之后,如果还有其他的冲突文件,会继续弹出冲突窗口,我们按上面的步骤依次解决即可