选用gitlab主要目的是为git做权限控制。
gitlab官网有英文安装说明
https://about.gitlab.com/download
选择对应的系统版本,CentOS6 (RedHat Linux6)
如果是root用户下安装可以忽略sudo
安装发送邮件的对应服务
sudo yum install curl openssh-server openssh-clients postfix cronie sudo service postfix start sudo chkconfig postfix on sudo lokkit -s http -s ssh
此部是执行了远程脚本,将gitlab相关安装信息加入到了yum中,再通过yum进行安装
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash sudo yum install gitlab-ce
如果需要安装其它版本,可以通过下载远程脚本修改或直接下载指定安装包,通过rpm安装。
脚本信息:https://packages.gitlab.com/gitlab/gitlab-ce/install,各版本安装包:https://packages.gitlab.com/gitlab/gitlab-ce
curl -LJO https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/6/gitlab-ce-XXX.rpm/download rpm -i gitlab-ce-XXX.rpm
sudo gitlab-ctl reconfigure
浏览器中输入ip地址直接访问gitlab。(如果已有其它web导致端口冲突,自行调整相应端口即可)
第一次进来是设置管理员用户密码。
随后跳转到登录页面,默认用户名是root,登陆后可修改用户名。
登录成功后如下图:
依次 新建分组:new group;新建项目:new project。
过程比较简单,输入相应的名称;
选择需要的权限,三个对应权限:
private私有(组以及组内项目只有指定成员可见)
internal内部(组以及组内项目登录用户均可见)
public公共(组以及组内项目无需登录即可见)
创建好project后,提示添加成功,但不能pull或push,需要add an ssh key,点进去添加。
需要客户端先生成ssh key,也就是哪台电脑需要访问git,就在这台电脑上生成key,如何生成ssh key:
Linux比较简单,直接输入以下命令:ssh-keygen -t rsa -C "GitLab" -b 4096
Linux如果之前生成过,可以直接查看:cat ~/.ssh/id_rsa.pub
Windows需要先下载安装ssh软件:http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
安装成功后运行puttygen.exe,下方选RSA,右下输入4096,点击generate按钮生成,鼠标在窗口空白区域随机晃动,成功后,save public key保存
有了这个key就可以继续add ssh key了,从ssh-rsa.....都粘到文本域中,title自动出,也可手输,点击add key按钮就完成了。
此时打开project目录不再有相应提示,页面下方有相应的git命令,参照这些命令就可以完成日常的git操作了。
如创建版本库:第一次clone会提示empty,因为确实是空的,进入目录后新建一个文件add并commit到本地,push到服务端。
git clone http://ip.../test-group/test-project.git
cd test-project
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master