一、git的下载安装

通过官网下载git的安装包,git官网地址: https://git-scm.com/
在这里插入图片描述
选择Windows:
在这里插入图片描述
下载完整版64位:
在这里插入图片描述
安装:双击运行.exe文件,直接全部下一步安装完成

完成后右击鼠标多出Git GUI Here和Git Bash Here两个选项
在这里插入图片描述
Git GUI Here 图形操作
Git Bash Here 命令行操作(基于Linux命令操作

我们一般使用命令行进行操作:
新建一个文件夹作为一个项目目录,然后进入文件夹,右击进入Git Bash Here界面:
在这里插入图片描述
git需要把当前的目录转换为git目录

git init 初始化一个Git目录,会生成一个.git的隐藏目录

在这里插入图片描述
创建git项目提交的身份:
①局部配置

git config user.name 用户名--->设置局部提交名
git config user.email 用户名@qq.com--->设置局部提交邮箱  这里只有是邮箱的格式就行

在这里插入图片描述
查看局部提交身份:

cat .git/config

在这里插入图片描述
②全局配置

git config --global user.name 用户名--->设置全部提交名
git config --global user.email 用户名@qq.com--->设置全部提交邮箱

在这里插入图片描述
查看全局提交身份:

cat ~/.gitconfig

在这里插入图片描述
局部身份配置和全局身份配置的优先级:就近原则,有局部用局部,没有局部用全局,二者不可以没有

查看当前版本的状态:

git status

没有修改和文件或目录时的状态
在这里插入图片描述
有修改文件或目录时的未提交的状态
在这里插入图片描述

将文件(项目)提交到缓冲区:

git add 文件名(项目名称)

在这里插入图片描述
缓冲区的状态
在这里插入图片描述
将文件(项目)提交到本地库:

git commit 文件 --->会自动打开文件,然后手动添加描述信息
git commit -m "描述" 文件 --->提交指定的文件
git commit -m "描述" --->提交当前缓冲库当中所有的文件

在这里插入图片描述
查看提交本地库后完成的状态
在这里插入图片描述

查看详细版本信息:

git log

在这里插入图片描述
以列表形式展示详细版本信息:

git reflog

在这里插入图片描述

指针:HEAD
通过指针可以看出当前所在的版本,也可通过指针进行版本回退
再添加一个版本
在这里插入图片描述
查看详细版本信息:
在这里插入图片描述
根据md5部分标识一个版本
如:2322c0e代表版本2;f32d86f代表版本1

版本回退:

git reset --hard md5标识符

在这里插入图片描述
在这里插入图片描述
分支:
一个独立的开发路线
在这里插入图片描述

项目创建之初就有一个分支(branch) master
但是我们还可以创建多个新的分支
新的分支会继承主分支上的文件内容及所处的版本

git branch 分支名称 --->创建分支

在这里插入图片描述
查看分支

git branch -v 绿色代表当前所处分支,默认主分支

在这里插入图片描述
切换分支
每个分支对同一文件所做的操作都是独立的,不会影响其他分支的相同文件

git checkout 分支名称

在这里插入图片描述

分支合并:
将online合并到master上
先切到online上进行版本修改
在这里插入图片描述
提交到缓存区
在这里插入图片描述
提交到本地库
在这里插入图片描述
到master进行分支合并

git merge 要合并的分支(online)

在这里插入图片描述
查看master分支上的1.txt,发现在online分支上所进行的操作已合并到master分支的1.txt
在这里插入图片描述

合并冲突:
发生原因:在不同分支上修改同一文件的同一地方,然后进行合并时会报冲突

模拟出现合并冲突:
master分支上的1.txt目前内容为:
在这里插入图片描述
online分支上的1.txt目前内容为:
在这里插入图片描述
可以发现目前两个分支的内容是一致的,现在我同时对两个分支1.txt进行添加版本操作
并提交
online:
在这里插入图片描述
在这里插入图片描述
master:
在这里插入图片描述
在这里插入图片描述

现在对两个分支进行合并:
在这里插入图片描述
出现了合并冲突,冲突位置在1.txt,冲突之后分支变为master|MERGING

冲突的文件里面展示的冲突的内容
在这里插入图片描述
对冲突内容进行手动的调整
在这里插入图片描述
解决完冲突内容进行一次提交,当次提交不指定具体提交的文件名称
在这里插入图片描述
此时冲突已解决
在这里插入图片描述
总结:
解决冲突的步骤
1、进行合并
2、进入冲突文件,进行手动的代码调整
3、进行add将冲突文件添加到缓冲区
进行commit提交,注意不要指定具体提交的文件名称
4、冲突解决完成

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐