git工具的使用

本文详细介绍了Git的基本操作,包括初始化仓库、版本控制、文件状态管理以及用户信息设置。接着,通过实例演示了如何在gitee上创建并管理远程仓库,以及如何将本地仓库推送到远程。最后,讲解了如何搭建GitLab私有仓库,包括安装、配置及项目克隆。内容覆盖了Git的日常使用和远程仓库管理,适合开发者参考学习。
摘要由CSDN通过智能技术生成

一、什么是git

  • git(分布式版本控制系统)
    一个开源的分布式版本控制系统,可以有效的高速处理从小的到非常大的项目版本管理,也是Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。常见的git工具有github、gitlab、gitee等。

  • git的特点:
    速度快、设计简单、对非线性开发模式的强力支持(允许成千上万个并行开发的分支)、完全分布式、有能力高效管理类似linux内核的超大规模项目

二、本地git仓库

git相关命令含义

-s表示简洁输出
-m 添加注释
??表示不存在版本库中
A表示已经添加到暂存区
M(左边)表示被文件被添加到暂存区
M(右边)表示在工作区发生修改
D表示从工作区删除
[root@server6 ~]# yum install git -y
[root@server6 ~]# mkdir /home/westos/demo
[root@server6 ~]# cd /home/westos/demo
[root@server6 demo]# ls
[root@server6 demo]# l.
.  ..

安装git
在这里插入图片描述
创建并切换到demo目录,查看目录下无内容(包含隐藏文件)git init初始化demo目录为代码库,再次查看隐藏文件,出现.git隐藏目录,.git目录用于跟踪管理版本库。
在demo目录中创建README.md文件并查看状态,git add将代码添加到暂存区,再次查看文件状态。

在这里插入图片描述
默认在提交时会提交整个暂存区,添加注释并提交整个暂存区,提交时会默认创建邮箱和地址,也可以自行添加
再次查看可以看到代码文件前五状态内容,无内容表示文件无变更
在这里插入图片描述
向文件中添加内容,查看状态,右边的M表示目前代码的修改在工作区,git add后代码被提交到了暂存区,查看状态显示为左边的M,git commit提交代码
在这里插入图片描述
在文件中添加内容,查看状态为右边的M,也就是在工作区进行了修改,若不想进行修改可以通过git checkout撤销,查看文件可以看到追加部分消失,回到上一次提交的代码内容。
在这里插入图片描述
给文件追加内容先git add提交到暂存区,再次追加问价内容,查看状态MM,再次git add添加文件到暂存区,此时状态为左边的M
在这里插入图片描述
如果不想提交这些修改,可以使用git reset撤销暂存区的修改,查看状态可以看到右边的M即修改已经返回工作区,用git checkout撤销在工作区的修改,此时查看文件内容只有一行
在这里插入图片描述
为方便以后进行操作,可以生命用户信息,用户名为qwe,email为qwe@westos.org,这一信息被保存在/.gitconfig这一隐藏文件里
在这里插入图片描述
在demo目录下创建文件名为a的隐藏文件和名为dir的隐藏目录
在这里插入图片描述
编辑.gitinnore文件,写入.*表示或略当前目录中 的所有隐藏文件,此时查看状态就看到不到刚才的隐藏文件了
在这里插入图片描述
查看demo目录下的代码文件内容,再追加一行并提交更改,-a参数相当于之前的add操作,不用分两次执行了。
查看状态无内容,这表示更改已经提交且无变更,此时通过rm -rf删除代码文件,查看状态可以看到右侧的D,表示删除的是工作区的内容,可以撤销防止误删
在这里插入图片描述

使用checkout来撤销此次删除,然后查看文件内容,可以看到文件恢复在这里插入图片描述
如果使用git rm进行删除后,再使用commit提交了删除操作,可以使用回滚的方式恢复文件信息,使用git reflog命令查看历史版本信息,然后选择需要回滚到的版本,使用 git reset --hard 版本id进行回滚。
在这里插入图片描述

二、远程git仓库搭建

这里使用gitee进行仓库的搭建,浏览器搜索gitee官网、账号注册部分省去。
创建并查看秘钥,赋值公有秘钥到gitee仓库中的SSH公钥
在这里插入图片描述在这里插入图片描述在这里插入图片描述
点击右上角的加号并选择新建仓库
在这里插入图片描述
设置仓库名为demo,路径为自动添加
在这里插入图片描述
在仓库组件的是否开源选择开源选项并勾选底下的仓库公开选项并保存
在这里插入图片描述
在仓库中可以查看到ssh地址,根据页面提示可以将本地的demo仓库上传到gitee仓库
在这里插入图片描述在这里插入图片描述
切换到demo目录,推送本地仓库内容到gitee
在这里插入图片描述在这里插入图片描述
在gitee远程仓库中的demo仓库中可以查看到仓库中的文件
在这里插入图片描述
在本地将demo代码文件删除,通过gitee远程仓库克隆,可以看到demo恢复
在这里插入图片描述

三、搭建远程私有仓库gitlab

gitlab-ce下载地址:

https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/
#安装相关依赖
[root@server1 ~]# yum install curl policycoreutils-python openssh-server perl -y
[root@server1 ~]# wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-14.1.2-ce.0.el7.x86_64.rpm --no-check-certificate
[root@server1 ~]# ls
anaconda-ks.cfg  gitlab-ce-14.1.2-ce.0.el7.x86_64.rpm  original-ks.cfg
[root@server1 ~]# rpm -ivh gitlab-ce-14.1.2-ce.0.el7.x86_64.rpm
[root@server1 ~]# cd /etc/gitlab/
[root@server1 gitlab]# ls
gitlab.rb
#编辑gitlab.rb配置文件,将外部url即external_url参数改为自己的gitlab仓库ip
[root@server1 gitlab]# vim gitlab.rb 
------------------------------
  32 external_url 'http://192.168.230.140'
-------------------------------
#重载服务
[root@server1 gitlab]# gitlab-ctl reconfigure
#重载时间较长耐心等待

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

#重载完成后可在提示中看到密码储存在/etc/gitlab/initial_root_password
#查看initial_root_password文件得到密码
[root@server1 gitlab]# cat /etc/gitlab/initial_root_password
-----------------------------------------
Password: v26/LpBMqlJlWqhCq5v7g1phFzq4Py8IzMvd2w8ShIE=
-----------------------------------------
#浏览器中访问server1ip等到登陆框

在这里插入图片描述用户名是root,密码是刚得到的密码,点击登陆
在这里插入图片描述在这里插入图片描述
点击右上角的用户,选择preferense,password修改密码,保存(密码长度必须大于8位)重新登陆
在这里插入图片描述为方便我们使用可以修改语言支持为中文:
在preferense中的location language选择中文保存重新登陆
在这里插入图片描述

#生成密钥
[root@server1 ~]# ssh-keygen
[root@server1 ~]# cd .ssh/
[root@server1 .ssh]# ls
id_rsa  id_rsa.pub
[root@server1 .ssh]# cat id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDY1PvEO9bwEnqBiWkeq2cvw6wOru2J3mXbOd6QHhoVoNaf/z3MrY/7ZUhBPLXFCxVa8OGxsYlTfdYkhGq3foNxnXHMOlHsM7GXdOCcpB5UinmaOAAlydVoSaJ8OGZAbzs5bTKul/uGNhUaeEUC/0PR3eQENPmn2acaW1oPLtKqt3sOCyWsGPSSlxXQfS4KHTbWI/ag92YRdUqrGG/V+FQNsPtsVy+Og8YTVvz80YydRz13Dcl2iKwOKYyvnRtEvPnXEIYGAlC4mk3sY6USROSgRObiJ1sg8GmLHTASBVjLKawRlLRQP6HmkQ8yLwIrw8TtjFC9UnipUotVnlvobmfr root@server1

在这里插入图片描述

在这里插入图片描述将公钥复制到gitlab仓库的ssh keys,点击addkey
在这里插入图片描述添加成功
在这里插入图片描述新建名为demo的项目在这里插入图片描述通过ssh克隆该项目仓库
在这里插入图片描述

[root@server1 ~]# yum install git -y
#执行克隆命令,克隆demo仓库到本地
[root@server1 ~]# git clone git@192.168.230.140:root/demo.git
Cloning into 'demo'...
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (3/3), done.
[root@server1 ~]# ls
anaconda-ks.cfg  demo  gitlab-ce-14.1.2-ce.0.el7.x86_64.rpm  original-ks.cfg
[root@server1 ~]# cd demo/
#本地的demo仓库中的内容与gitlab中的一致
[root@server1 demo]# ls
README.md
[root@server1 demo]# git remote -v
origin	git@192.168.230.140:root/demo.git (fetch)
origin	git@192.168.230.140:root/demo.git (push)

在这里插入图片描述在这里插入图片描述在gitlab仓库中可以看到,在jenkins中也能查看到
在这里插入图片描述在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值