01-快速上手git学习

这是我大三学习git所整理的,如果有不足之处,希望各位大佬多多指教

一、git基本介绍

git关键词:分布式版本控制

1.1、什么是版本控制?

        版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史,方便查看更改历史记录,备份以便恢复以前的版本的软件工程技术,简单说就是用于管理多人协同开发项目的技术。其特点如下:

  • 实现跨区域多人协同开发
  • 追踪和记载一个或者多个文件的历史记录
  • 组织和保护你的源代码和文档
  • 统计工作量
  • 并行开发、提高开发效率
  • 跟踪记录整个软件的开发过程
  • 减轻开发人员的负担,节省时间,同时降低人为错误

1.2、什么是分布式?

        分布式是指所有版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时push到相应的服务器或其他用户那里。由于每个用户那里保存的都是所有的版本数据,只要有一个用户的设备没有问题就可以恢复所有的数据,但这增加了本地存储空间的占用。

在这里插入图片描述

二、git起步

2.1、安装

打开Git官网下载安装程序,然后按照默认选项安装即可。当我们鼠标右键出现如下图所示证明安装成功。
在这里插入图片描述

2.2、初始化个人信息

鼠标右键打开Git bash herre命令行管理,并输入以下:

  1. 初始化姓名git config ---global user.name '你的名字'
  2. 初始化邮箱git config --global user.email '你的邮箱'
  3. 查看个人信息git config --list --global

ps: config——配置         global——全局

注意:当我们想要对其配置某个仓库的个人信息,我们只要打开仓库所在的命令行管理然后按照上面步骤把--global换成--local进行配置,否则默认使用全局配置的个人信息,另外我们配置某个仓库的个人信息时,这个仓库必须完成git项目的初始化

在这里插入图片描述

2.3、初始化git项目

2.3.1、在已有项目的基础上初始化git项目

        打开项目所在的文件夹,右击选中Git bash herre命令行管理,并输入git init
在这里插入图片描述
在这里插入图片描述

2.3.2、使用git新建一个项目

        选中想要新建项目所在的位置,右击选中Git bash herre命令行管理,并输入git init '项目名'
在这里插入图片描述

2.3.3、查看git项目是否初始化成功

       查看git项目是否初始化成功的标准:是否有git文件夹

       但是当我们直接打开项目所在文件夹的时候,我们是看不到git的文件夹(被隐藏了)的,所以我们要使用git命令行的管理来查看,是否有git文件夹,查看如下
在这里插入图片描述

三、git常用命令

3.1、Git 的M,T,D,A,U简写标准标志

  • A: 增加的文件(没有被添加到本地仓库中,但是被添加到暂存区的文件)
  • C: 文件的一个新拷贝
  • D: 删除的一个文件
  • M: 文件的内容或者mode被修改了
  • R: 文件名被修改了
  • T: 文件的类型被修改了
  • U: 文件没有被合并(你需要完成合并才能进行提交)
  • X: 未知状态。(很可能是遇到git的bug了,你可以向git提交bug report)
    在这里插入图片描述

3.2、创建文件

1、我们可以直接打开项目所在文件夹,建立文件
2、也可以通过命令行来创建文件,输入touch '项目名'
在这里插入图片描述

3.3、git status 查看上次提交之后是否有对文件进行再次修改

       git status -s加上-s 参数来获得简短的输出结果
在这里插入图片描述
注意:文件名前??代表没有提交到git管理仓库上面

3.4、git查看历史(提交到本地仓库的历史)

3.4.1、git log (不包括被撤销的记录)

git log常见参数如下:

  • --all::查看所有分支的历史版本
  • --oneline:简洁的方式查看历史版本
  • --graph:以图形的方式查看
  • -数字:显示多少条历史记录
    在这里插入图片描述在这里插入图片描述

3.4.2、git reflog 查看所有历史(包括被撤销的记录)

在这里插入图片描述

3.4.3、 gitk 图形的方式查看历史版本

在这里插入图片描述

四、git分区管理

4.1、分区介绍

git有三大分区:工作区、暂存区和版本库(本地仓库),具体如下

  • 工作区(WORKING DIRECTORY): 直接编辑文件的地方,肉眼可见直接操作
  • 暂存区(STAGIN AREA):数据(快照)暂时存放的地方
  • 版本库(GIT DIRECTORT(RESPOSITORY)):存放已经提交的数据,push 的时候,就是把这个区的数据 push 到远程git仓库了
    在这里插入图片描述

4.2、分区提交管理

4.2.1、工作区->暂存区

git add'文件名'工作区的文件提交到暂存区

  1. git add '文件名'提交某个文件
  2. git add .提交所有文件

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

4.2.2、暂存区->本地仓库

git commit将暂存区添加到本地仓库中

常用的git commit参数命令如下:

  1. git commit [file1] [file2] ... -m [message]提交暂存区[files]到仓库区(可选),-m[message]是一些备注信息
  2. git commit -am [message]提交所有包括工作区的文件到仓库区

在这里插入图片描述

4.3、分区撤销管理

4.3.1、暂存区->工作区

git restore 文件名 将我们提交到暂存区中的修改撤销到工作区

注意:文件一定是暂存区内的文件

  1. git restore '文件名'将暂存区的文件回退,撤销文件的更改

  2. git restore --staged '文件名'将暂存区的文件撤出到工作区,但不会撤销文件的更改

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

4.3.2、本地仓库->工作区

git reset --hard 本地仓库历史版本回退(改变工作区到回退的历史版本时的内容)

  1. git reset --hard Head~数字:1代表回退上一个版本,2代表回退上上版本,以此类推
  2. git reset --hard head~^:一个^代表回退上一个版本,^^代表回退上上版本,以此类推

ps:hard里面存放的是所有分支,Head代表的是当前分支所在文件

在这里插入图片描述

补充1:改到历史版本撤销之前的历史版本

git reset 任意版本的id号回到所带版本id

git reflog查看所有版本

在这里插入图片描述

补充2:没有本地仓库->暂存区的撤销

五、git的分支管理

5.1、创建分支、查看分支、切换分支基础

  • git branch '分之名'创建分支
  • git branch -v查看分支
  • git checkout '分之名'切换分支
  • git checkout -b '分之名'切换并创建分支
    在这里插入图片描述

5.2、多分支协调管理

5.2.1、前期准备

5.2.1.1、项目以及分支准备

准备好一个git项目,可以是从github上面拉取的,也可以是自己建立的。
我这的项目内容如下,内容已经全部提交到本地仓库里面了。
此外,我还创建了一个test分支
在这里插入图片描述在这里插入图片描述

5.2.1.2、vim知识点补充

在这里插入图片描述
vim插入模式详情i/I/a/A/o/O:

  • a 在光标所在的字符后面插入
  • A 在光标所在的行尾插入
  • i 在光标所在的字符前进行插入
  • I 在光标所在的行首插入
  • o 在光标下插入新行
  • O 在光标上插入新行

5.2.2、分支合并(快速合并)

在这里插入图片描述
要想合并分支,我们输入git merge 合并分支名即可进行快速合并了。
在这里插入图片描述

补充:解决分支快速合并冲突问题:Automatic merge failed; fix conflicts and then commit the result.

问题
Auto-merging demo2.txt
CONFLICT (content): Merge conflict in demo2.txt
Automatic merge failed; fix conflicts and then commit the result.
You have not concluded your merge (MERGE_HEAD exists).
Please, commit your changes before you merge.
自动合并demo2.txt
冲突(内容):在demo2.txt中合并冲突
自动合并失败;修复冲突,然后提交结果。
解决办法步骤如下
1、找到我们发生冲突的文件
2、观察冲突的代码部分并进行修改(先分析你们俩个的代码是实现相同功能而写的重复的代码还是各自实现的不同的功能的代码。如果是重复代码:两个二选一删除一个,然后再把这些冲突标示符删除即可;如果不是重复代码,两个都需要保留,只把冲突符号(红色部分)删除即可)
在这里插入图片描述
3、重新提交到本地仓库,并合并分支

  1. git add .提交到暂存区
  2. git commit -m '说明'提交到本地仓库
  3. git merge 合并分支名快速合并分支

在这里插入图片描述

六、常用命令总结

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值