持续集成与持续交付(CI/CD)<1>--git介绍与使用、搭建gitlab代码仓库

git简介

  • git:版本控制系统,它的速度飞快,极其适合管理大项目,有着令人难以置信的非线性分支管理系统。
  • git特点:
    • 速度快
    • 简单的设计
    • 对非线性开发模式的强力支持(允许成千上万个并行开发的分支)
    • 完全分布式
    • 有能力高效管理类似 Linux 内核一样的超大规模项目(速度和数据量)
  • 详细参考链接:
    https://git-scm.com/book/zh/v2.

一、git使用

获取 Git 仓库通常有两种方式:

  • 将尚未进行版本控制的本地目录转换为 Git 仓库。
  • 从其它服务器克隆一个已存在的 Git 仓库。比如: git clone

原理介绍

  • Git 有三种状态:已提交(committed)、已修改(modified) 和 已暂存(staged)
    • 已修改表示修改了文件,但还没保存到数据库中
    • 已暂存表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中
    • 已提交表示数据已经安全地保存在本地数据库中
  • 这会让我们的 Git 项目拥有三个阶段:工作区、暂存区以及 Git 目录
  • 图解:
    在这里插入图片描述

本地目录转换为git仓库并使用

  • 初始化本地仓库
  • 添加相关更改到暂存区
  • 提交更改到本地仓库
安装Git:
yum install -y git

初始化版本库:
mkdir demo
git init
	Initialized empty Git repository in /home/git/demo/.git/ 
ls .git/
    branches  config  description  HEAD  hooks  info  objects  refs

`注意`.git目录是git跟踪管理版本库的,里面保存了相关更改信息,不要对这个目录中的内容进行更改

在这里插入图片描述

配置git用户信息(在提交更改到版本库中之前需要配置用户信息):
git config --global user.name "xxx"
git config --global user.email xxxx

检查当前文件状态:
git status
git status -s		           %简化输出

git状态总述:
$ git status -s
 M README        %已经在版本库中的文件做了更改但未add(添加)
MM Rakefile      %文件第二次更改且未添加到暂存区(左边的M表示暂存区的数据没有提交,右边的M表示工作区又修改了同样的文件)
A  lib/git.rb    %文件创建完后未更改直接添加到暂存区,但未提交
M  lib/simplegit.rb  %已经在版本库中的文件文件做完更改后添加到暂存区但未提交
?? LICENSE.txt      %文件创建完后未添加到暂存区

注意:暂存区也相当于在版本库中

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

跟踪新文件(将文件添加到暂存区)
$ git add README

查看已暂存和未暂存的修改
$ git diff

提交更新
$ git commit

跳过使用暂存区域
$ git commit -a -m 'added new benchmarks'

在这里插入图片描述

移除文件
$ git rm PROJECTS.md
$ git rm --cached README

重命名文件
$ git mv README.md README

其实,运行 git mv 就相当于运行了下面三条命令:

$ mv README.md README
$ git rm README.md
$ git add README

查看提交历史
$ git log
$ git log -p -2
$ git log --stat
$ git log --pretty=oneline

取消暂存的文件
$ git reset HEAD README.md

撤消对文件的修改
$ git checkout -- README.md

版本回退:
$ git reflog
$ git reset --hard efa267a

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

忽略文件(当需要屏蔽某个目录及文件时,例如开发人员在编译代码时会产生临时文件,这些就需要忽略)
$ cat .gitignore
.*		    %忽略所有隐藏文件
/test		%只忽略当前目录下的test文件
build/		%忽略任何目录下名为 build 的文件夹

在这里插入图片描述

  • 通过版本回退我们可以恢复某些误删的文件:
    在这里插入图片描述
  • .git目录是git跟踪管理版本库的,里面保存了相关更改信息,如果把这个目录删了将会无法实现版本回退
    在这里插入图片描述

远程仓库使用

  • 通过上述示例我们可以看到,只有本地仓库是不够稳妥的,我们最好能将数据上传到云端进行备份,这样就可以免除后顾之忧了,需要的时候只需要将远程项目克隆到本地即可
  • 远程仓库:注册github帐号(或者是码云等国内平台,速度更快),并新建一个仓库:

在这里插入图片描述

  • 通过ssh方式上传
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

二、搭建gitlab代码仓库

  • 我们可以利用gitlab自己搭建一个类似github那样的代码仓库

1.gitlab安装

官网:https://about.gitlab.com/install/

软件下载(官方下载慢,推荐使用国内镜像站点)
https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/

软件安装: (官方推荐至少4G内存)
yum install -y curl policycoreutils-python openssh-server

yum install -y gitlab-ce-12.8.5-ce.0.el7.x86_64.rpm

vim /etc/gitlab/gitlab.rb		
external_url 'http://172.25.0.1'		 %访问gitlab的地址

gitlab-ctl  reconfigure			  %重载服务

登录gitlab: 
http://172.25.0.1 		     %用户:root 第一次登录需要强制修改密码
  • 常用命令
    • gitlab-ctl start %启动所有 gitlab 组件
    • gitlab-ctl stop %停止所有 gitlab 组件
    • gitlab-ctl restart %重启所有 gitlab 组件
    • gitlab-ctl status %查看服务状态
    • gitlab-ctl reconfigure %重载服务
    • gitlab-ctl tail % 查看日志
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

2.gitlab使用

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值