git学习笔记

第一章 Git概述

1.1 何为版本控制

版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统。版本控制最重要的是可以记录文件修改历史记录,从而让用户能够查看历史版本,方便版本切换。
在这里插入图片描述

1.2 为什么要用版本控制工具

个人:方便变更内容查看,随时随地查看自己的曾经。
团队:识别不同人员开发的具体内容,追踪每一位开发人员的具体行为。协同整个团队的进度,加快开发效率。
核心意义:当团队中不同人对于同一决策发生冲突时,及时提醒共同商讨。
在这里插入图片描述
两个人都下载了版本1,如果使用多副本的方式,第二个人的代码很容易覆盖第一个人修改的代码。所以使用专业的版本控制工具。

1.3 版本控制工具

  1. 集中式版本控制工具

CVS、SVN(Subversion)、VSS……
  集中化的版本控制系统诸如CVS、SVN等,都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连接到这台服务器,取出最新的文件或者提交更新。多年以来,这已成为版本控制系统的标准做法。
  这种做法带来了许多好处,每个人都可以在一定程度上看到项目中的其他人正在做些什么。而管理员也可以轻松掌控每个开发者的权限。并且管理一个集中化的版本控制系统,要远比在各个客户端上维护本地数据库来得轻松容易。
不需要开发人员之间沟通彼此之间都做了什么,通过中心服务器都能拉取到。
  缺点是中央服务器的单点故障,如果服务器宕机一个小时,那么在这一个小时内,谁都无法提交更新,也就无法协同工作。
在这里插入图片描述

  1. 分布式版本控制工具

Git、Mercurial、Bazaar、Darxs……
   像Git这种分布式版本控制工具,客户端提取的不是最新版本的文件快照,而是把代码仓库完整地镜像下来。这样任何一处协同工作用地文件发生故障,事后都可以用其他客户端地本地仓库进行恢复,因为每个客户端地每一次文件提取操作,实际上都是一次对整个文件仓库地完整备份。
核心点:除了中心仓库保存版本变化,每一位开发者都要自己保存一份。同步别人的仓库就能实现拉取,代码会合并。
  分布式的版本控制系统出现之后,解决了集中式版本控制系统的缺陷;
   1. 服务器断网的情况下也可以进行开发(因为版本控制是在本地进行的)
   2. 每个客户端保存的也都是完整的项目(包含历史记录,更加安全)
在这里插入图片描述

第二章 Git常用命令

1. 设置用户签名

1.1 基本语法

git config --gloabl user.name yhm 用户名
git config --global user.email 邮箱
global是全局设置,只需要设置一次,库下面的签名都是这个
git config --list #查看全局配置
cat ~/.gitconfig # cat linux中查看文本的命令 ~家[你当前用户的家]/ .gitconfig
说明:
签名的作用是区分不同操作者身份。用户的签名信息在每一个版本的提交信息中能够看到,以此确认本次提交是谁。Git首次安装必须设置一下用户签名,否则无法提交代码。
注意:这里设置用户签名和将来登录GitHub的账号没有任何关系。

2.初始化本地库

2.1基本语法

git init

2.2案例实操

告诉他需要管理的是哪个目录,保证当前git bash的路径是想要去创建git仓库的路径。对应后只需要输入命令git init初始化管理当前的目录即可。
在这里插入图片描述
git_test目录中会生成一个.git的目录,里面有很多配置文件,不要手动修改,一切操作通过git交互的命令来进行。

3.查看本地库状态

3.1 基本语法

git status

3.2 案例实操

(1)首次查看(工作区没有文件)
在这里插入图片描述
(2)新增文件
在这里插入图片描述

swp暂存的交换区
在这里插入图片描述

退出后变成hello.txt
在这里插入图片描述
再次输入git status,当前命令还未添加到暂存区。文件是红色的状态。
在这里插入图片描述

4 添加暂存区

4.1 将工作区的文件添加到暂存区

暂存区是一个临时区域,用于存放你准备提交的更改。可以选择性地就将工作目录中地修改添加到暂存区,而不是一次性提交所有更改。
(1)基本语法
git add 文件名
(2)案例实操
在这里插入图片描述

4.2 查看状态(检测到暂存区有新文件)

在这里插入图片描述

5 提交本地库

5.1 暂存区文件提交到本地库

本地库是Git存储项目历史记录的地方,包含所有提交的版本。通过git commit命令,暂存区的内容会被提交到本地库,生成一个新的版本。
(1)基础语法
git commit -m “日志信息” 文件名 #日志信息用来做版本的标记
(2)案例实操
在这里插入图片描述

5.2 查看状态(没有文件需要提交)

在这里插入图片描述

6 修改文件

6.1 查看状态(检测到工作区有文件被修改)

在这里插入图片描述

6.2 将修改的文件再次添加到暂存区

在这里插入图片描述

6.3 查看状态(工作区的修改添加到了暂存区)

在这里插入图片描述

6.4 将暂存区文件提交到本地库

在这里插入图片描述

6.5 原理

最开始处于工作区,在工作区可以写代码,取决于前置命令初始化,.git同级目录都可以初始化文件,不会将空的文件夹标记为工作文件。里面有文件才会标记出来。git主要记录变化情况。在工作区可以新建文件,修改文件。
暂存区的意义是临时存储git当前的变化。此时还未保存。在进行不同版本进行查看时,add可以存着不同版本,commit再添加不同版本添加到本地库。暂存区并不是版本,可以添加多次文件的新增和修改,commit提交到本地库才会变成具体的版本保存。
在这里插入图片描述

7 历史版本

7.1 查看历史版本

(1)基本语法
git reflog #查看版本信息
git reflog -n 数量
git log #查看版本详细信息
(2)案例实操
在这里插入图片描述

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

7.2 版本穿梭

(1)基础语法
git relog #查看版本信息
git reset --hard 版本号
(2)案例实操
– 首先查看当前的历史记录,可以看到当前是在ceclea0
在这里插入图片描述
– 切换之前的版本,d14753a版本,也就是我们第一次提交的版本hello file
在这里插入图片描述
此时查看文件,就是第一个版本内容。

第3章 Git客户端边界操作

1.安装部署

使用命令行操作git相对而言是非常不方便的,查看内容也不是很直观,所有官方推荐使用Git的GUI客户端来完成野棉花操作。
https://git-scm.com
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

推荐下载使用GitHub Desktop,下载安装完成之后,登录进入界面。

2.基础操作

添加本地仓库,选择本地仓库的文件夹。
在这里插入图片描述
在history就可以看到所有的版本。
在这里插入图片描述
在本地修改文件,gitGUI上面就会自动添加修改,Commit to master就可以提交到本地仓库。

创建新的仓库

在这里插入图片描述

3.连接GitHub远程仓库

登录自己注册的账号

点击Publish可以将当前项目创建到GitHub上面。

4. idea连接远程仓库

下载git、gitee、github插件
在Setting->version contorl->git选择git.exe所在路径
在这里插入图片描述
Gitee添加自己的账号
在这里插入图片描述
工程项目和pom.xml右键Git->+Add
commit提交到本地仓库,share分享到云端
在这里插入图片描述

5.单分支内多个人共同开发容易发生冲突。

A有自己的本地仓库,使用的分支是master
B有自己的本地仓库,使用的分支是master
A和 B都进行远程提交时会发生分支冲突。

6.IDEA中的多分支实战

在提交完成模块1开发之后,再去向相同的分支提交模块2,会出现报错的情况。此时就需要我们将不同模块开发的代码首先提交到不同的分支中。

6.1 创建新的分支

首选使用IDEA的创建分支功能,创建module2分支。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值