- 版本控制概念
- Gitlab部署
1.版本控制概念
1.1分类
(一)1 本地版本控制系统(传统模式)
(二)2 集中化的版本控制系统 CVS、Subversion(SVN)
(三)3 分布式版本控制系统GIT
1.2 git产品
(一)github 【公共的服务器】
官网 https://guides.github.com/activities/hello-world/
(二)git 【纯命令行的软件】
服务器&客户端
1.准备工作目录
useradd git
mkdir /git-root/ 任意目录
cd /git-root/2.创建一个分支
git init --bare shell.git
初始化空的 Git 版本库于 /git-root/shell.git/
[root@abc git-root]# ls
shell.git3.目录授权 chown -R git:git shell.git/
4.切换git su - git
5.生成秘钥
ssh-keygen -t rsacd .ssh/
cp id_rsa.pub authorized_keys
logout6.设置git账号的shell
[root@abc git-root]# usermod -s /usr/bin/git-shell git7.测试下载仓库
cd /opt/
git clone git@10.18.47.23:/git-root/shell.git
[root@abc opt]# git clone git@10.18.47.23:/git-root/shell.git
正克隆到 'shell'...
git@10.18.47.23's password:
warning: 您似乎克隆了一个空版本库。
[root@abc opt]# ls
gitlab shell8.测试上传仓库
cd shell
touch 123
git add .
git commit -m 'zdsad'
git push -u origin master
rm -rf *
git clone git@10.18.47.23:/git-root/shell.git
[root@abc shell]# rm -rf *
[root@abc shell]# git clone git@10.18.47.23:/git-root/shell.git
正克隆到 'shell'...
git@10.18.47.23's password:
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 6 (delta 0), reused 0 (delta 0)
接收对象中: 100% (6/6), done.
[root@abc shell]# ls
shell
[root@abc shell]# ls shell/
123 test1.sh
(三)gitlab
私有的git web服务器
2.Gitlab部署
2.1 gitlab-LOGO
2.2 gitlab支持的类UNIX系统
Ubuntu
Debian
CentOS
Red Hat Enterprise Linux (please use the CentOS packages and instructions)
Scientific Linux (please use the CentOS packages and instructions)
Oracle Linux (please use the CentOS packages and instructions)
2.3 gitlab不支持的类UNIX系统
OS X
Arch Linux
Fedora
Gentoo
FreeBSD
2.4 官网链接
GitLab最新版下载安装_GitLab中文免费版-极狐GitLab中文官方网站
2.5 Install and configure the necessary dependencies 【安装并配置必要的依赖项】
4G以上内存
sudo yum install curl policycoreutils openssh-server openssh-clients安装和配置必要的依赖关系
sudo systemctl enable sshd 开机自启动ssh程序
sudo systemctl start sshd
sudo yum install postfix 安装邮件程序
sudo systemctl enable postfix
sudo systemctl start postfix
sudo systemctl stop firewalld 防火墙关上!
sudo systemctl disable firewalld
2.6 Add the GitLab package server and install the package 【添加gitlab的rpm包并安装包】
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash配置极狐GitLab 软件源镜像
yum install gitlab-ce
3.6 Configure and start GitLab 【配置并启动gitlab】
gitlab-ctl reconfigure 自动配置文件权限,安装数据库….
提示!安装的时间会很长!!!
4.7 Browse to the hostname and login 【浏览主机名并登录】
gitlab服务器的地址:http://192.168.26.146
GITLAB占用80端口,访问时直接访问IP就可以(第一次会让你确认root账户登录的密码)登录图示:
创建8位新密码
然后使用root登录即可创建项目:
推送SSH秘钥:
1.保存网址
复制网址用于下载项目(文档容器)
http://root@web1/root/firstproject.git
2.生成秘钥
ssh-keygen
3.查看秘钥
cat ~/.ssh/id_rsa.pub
4.上传密钥
5.连接地址
用于命令行,或客户端程序进行下载使用。
6.使用gitlab 的图形操作
上传文件到gitlab
newfile:新建一个文件。
uploadfile:再上传即可。
下载文件到gitlab客户端
7.使用gitlab 的命令行操作
域名解析:
克隆服务器的文件:
git config --global user.name "git"
git config --global user.email "git@localhost"
git clone git@localhost:root/project1.git 注意您粘贴的地址中,使用了什么用户名。上传文件:
cd my-test 进入工作目录
echo 123456 > ceshi.txt 新建文件
git init 初始化
git remote add origin git@localhost:root/my-test 配置远程服务器地址
【 如果远程服务器配置报错,因为之前已经配置过其他远程服务器。可以用命令清除掉
git remote rm origin 】git add . 建立当前文件夹下所有的文件,为准备上传的文件
git commit -m 'first commit' 提交上传说明
git push -u origin master 上传