Git代码管理工具

一、Git简介

1.1 Git用来版本控制

  • Git是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目。
  • Git易于学习,占地面积小,性能极快。
  • 它具有廉价的本地库,方便的暂存区域和多个工作流分支等特性。其性能优于Subversion、CVS、Perforce和ClearCase等版本控制工具。
  • Git的版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统。
  • 版本控制其实最重要的是可以记录文件修改历史记录,从而让用户能够查看历史版本,方便版本切换。

1.2 Git下载

Git官网,点击下载即可下载当前电脑所支持的对应版本的Git。

二、Git常用命令

2.1 设置用户签名

  • 用户的签名信息在每一个版本的提交信息中能够看到,以此确认本次提交是谁做的。
  • Git 首次安装必须设置一下用户签名,否则无法提交代码。
git config --global user.name 用户名
git config --global user.email 邮箱 

2.2 初始化本地库

初始化完,文件中会出现.git隐藏文件

git init

2.3 查看本地库状态

git status

1. 首次查看,工作区没任何文件

没有文件时,会出现下面的几行字

在这里插入图片描述
2. 创建一个文件,并写入一些字符

新增一个hello.txt文件

vim hello.txt

查看文件内容

cat hello.txt

3. 再次查看Git本地库状态

提示未追踪到文件,即未添加暂存区

在这里插入图片描述

2.4 添加暂存区

git add 文件名
  • 将文件添加暂存区的时候,会给出warning提示:
    LF will be replaced by CRLF in hello.txt
  • 意思是:在Windows下的换行符是CRLF,而在Linux下是LF,这里警告即自动转换了换行符

当hello.txt添加到暂存区后,再次查看本地库状态,此时,文件只是存放在的暂存区里面,还未提交到本地库。

在这里插入图片描述

2.5 提交本地库

1. 将暂存区的文件,提交到本地库,形成历史版本

git commit -m "日志信息" 文件名

其中生成的第四行15018a4就是版本号

在这里插入图片描述

2. 更改后,再次查看状态

git commit -m "first commit" hello.txt

在这里插入图片描述

2.6 修改文件

1. 模拟修改文件

进入hello.txt文件中,并修改文件

vim hello.txt

按下i进入编辑模式,按下esc退出编辑模式,按下:wq保存

2. 修改hello.txt后,查看本地库状态

此时的文件并没有提交,检测到工作区都文件被修改,需要将修改的文件再次添加暂存区。

git status
git add hello.txt

修改未提交时的状态

在这里插入图片描述

3. 将修改后的文件提交到暂存区,并查看状态

git add hello.txt
git status

在这里插入图片描述
4. 提交到本地库

git commit -m "second commit" hello.txt

在这里插入图片描述
查看版本信息
在这里插入图片描述

2.7 历史版本

2.7.1 查看历史版本

git reflog  # 查看版本信息
git log 	# 查看版本详细信息

在这里插入图片描述

2.7.2 版本穿梭

git reset --hard 版本号

切换版本,即想把现在的指针指到第二次修改的文件上

在这里插入图片描述

指针指到第二个版本了

在这里插入图片描述
版本穿梭,既可以往前穿梭,也可以往后穿梭。

三、Git分支操作

3.1 分支的简述

  • 在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独分支。
  • 使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。
  • 对于初学者而言,分支可以简单理解为副本,一个分支就是一个单独的副本。(分支底层其实也是指针的引用)

3.2 分支的操作

3.2.1 查看分支

git branch -v

3.2.2 创建分支

git branch 分支名

3.2.3 切换分支

git checkout分支名

3.2.4 合并分支

git merge 分支名

假设要把hot-fix分支合并到master分支里面,那么需要将当前分支切换到master后,再使用合并分支命令,将分支名写成hot-fix
在这里插入图片描述
在这里插入图片描述

合并冲突:如果hot-fix分支进行修改的同时,master分支也在修改,则最后合并时会发生合并冲突。这时候需要手动合并分支。

  1. 编辑有冲突的文件,删除特殊符号,决定要使用的内容
  2. 特殊符号:<<<<<<< HEAD 当前分支的代码 ======= 合并过来的代码 >>>>>>> hot-fix
  3. 添加到暂存区
  4. 提交本地库(此时执行的名利不能带文件名,即git commit -m ""即可)
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值