Git基本使用

Git

git控制台快捷键

快捷键解释
Ctrl+Insert复制
ctrl + l清楚日志指令
Shift+Insert粘贴

1、概述:

Git是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目。

除分布式版本控制工具、也还是集中式版本控制工具

1.1、版本控制

版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统。

版本控制其实最重要的是可以记录文件修改历史记录,从而让用户能够查看到历史版本,方便版本切换。

1.1.1、为什么需要版本控制

个人开发过度到团队协作

如:企业中,同一个代码由同一时间会由多人查看,如果一人(A)修改,其他人(B)再修改,由于修改的都是版本一号,当A将修改后的源码提交后,由于B修改的是初版本,没有和A修改后的版本融合,会导致B修改的源码覆盖掉A修改的源码,此时就需要使用到工具,将两人修改的源码融合起来。

1.1.2、版本控制工具
  • 集中式版本控制工具

原理:使用中央服务器功能,当需要修改源码时,从中央服务器中下载修改提交,在一个人修改过程中,其他人不能修改。

在这里插入图片描述

  • 分布式版本控制工具

原理:使用远程库,每个人修改代码后会将代码推送在远程库中,远程库中保持着最新源码,最新的源码也会同步到每个用户本地。

在这里插入图片描述

1.2、Git工作机制

Git三大区:

  • 工作区:代码存放的磁盘的位置,可以删除
  • 暂存区:将工作区的代码添加到暂存区,可以删除
  • 本地库:把暂存区代码提交至本地库,就会生成对应的历史版本,此时无法删除

在这里插入图片描述

1.3、Git和代码托管中心

代码托管中心时基于网络服务器的远程代码仓库,一般我们简单称为远程库

  • 局域网
    • GitLab
  • 互联网
    • GitHub(外网)
    • Gitee码云(内网)

1.4、Git安装

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

说明:
(1)图标组件(Addition icons) : 选择是否创建桌面快捷方式。
(2)桌面浏览(Windows Explorer integration) : 浏览源码的方法,使用bash 或者 使用Git GUI工具。
(3)关联配置文件 : 是否关联 git 配置文件, 该配置文件主要显示文本编辑器的样式。
(4)关联shell脚本文件 : 是否关联Bash命令行执行的脚本文件。
(5)使用TrueType编码 : 在命令行中是否使用TruthType编码, 该编码是微软和苹果公司制定的通用编码。

在这里插入图片描述

选择git的编辑器

在这里插入图片描述

是否要修改初始化分支的名字

在这里插入图片描述

在这里插入图片描述

(1)检查出windows格式转换为unix格式:将windows格式的换行转为unix格式的换行再进行提交。
(2)检查出原来格式转为unix格式:不管什么格式的,一律转为unix格式的换行再进行提交。
(3)不进行格式转换 : 不进行转换,检查出什么,就提交什么。

在这里插入图片描述

在这里插入图片描述

选择提交的时候换行格式
(1)检查出windows格式转换为unix格式:将windows格式的换行转为unix格式的换行再进行提交。
(2)检查出原来格式转为unix格式:不管什么格式的,一律转为unix格式的换行再进行提交。
(3)不进行格式转换 : 不进行转换,检查出什么,就提交什么。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2、Git常用命令

命令名称作用
git config --global user.name 用户名设置用户签名
git config --global user.email 邮箱设置用户签名
git init初始化本地库
git status查看本地库状态
git add 文件名添加到暂存区
git commit -m “日志信息” 文件名提交到本地库
git reflog查看历史记录
git reset --hard 版本号版本穿梭

2.1、设置用户签名

Git首次安装必须设置一下用户签名,否则无法提交代码

2.2、初始化本地库

基本语法

git init

在这里插入图片描述

2.3、查看本地库

git status

在这里插入图片描述

window 命令行创建txt文件

git命令和linux是通用的

1、添加修改编辑文件
vim 文件名

2、修改成功退出
shift + ;   再输如wq   回车

在这里插入图片描述

在这里插入图片描述

2.4、添加暂存区

git add 文件名

在这里插入图片描述

2.5、提交本地库

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

基本语法

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

在这里插入图片描述

2.6、查看版本信息

git reflog

git log

在这里插入图片描述

2.7、修改文件

在这里插入图片描述

在这里插入图片描述

2.8 、历史版本(版本穿梭)

//查看版本
git reflog

//查看详细日志
git log

//穿越版本
git reset --hard 版本号

在这里插入图片描述

3、Git分支

在这里插入图片描述

在这里插入图片描述

3.1、什么是分支

分支,就是将一个程序分为多种层次,如用户使用层,当需要修改时,肯定是不能直接修改用户使用层的,此时就需要一个分支,用于修改,将修改好的程序在与用户使用层合并起来

在这里插入图片描述

3.2、分支的好处

同时并行推进多个功能开发,提高开发效率

各个分支在开发过程中,如果其中某一个分支开发失败,不会对其他分支有任何影响,失败的分支删除重新开始即可。

3.3、分支的操作

命令名称作用
git branch 分支名创建分支
git branch -v查看分支
git checkout 分支名切换分支
git merge 分支名把指定的分支合并到当前分支上
3.3.1、查看分支

在这里插入图片描述

3.3.2、合并分支
正常合并

在这里插入图片描述

冲突合并

冲突产生原因:

合并分支是,两个分支在同一个文件的同一个位置有两套完全不同的修改。Git无法替代我们决定使用哪一个。必须认为决定新代码内容。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

手动合并

在这里插入图片描述

4、Git团队协作机制

代码托管中心:GitHub

4.1、团队内协作

  • 建立代码托管中心
  • 团队内可以从代码托管中心中克隆代码
  • 团队内成员可以修改代码后上传至代码托管中心

4.2、跨团队协作

  • 代码托管中心建立分支
  • 团队外成员访问该分支,对其克隆、修改等操作
  • 团队外成员将其修改后代码发送到主分支后,管理员对其审核并确认是否合并

4、Idea集成Git

5、GitHub

GitHub网址: https://github.com/

5.1、创建远程库

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

5.2、远程仓库操作

5.2.1、创建远程仓库别名

1)基本语法

git remote -v				//查看当前所有远程地址别名
git remote add 别名 远程地址		   //设置远程仓库别名	

在这里插入图片描述

5.2.2、代码推送

1)基本语法

git push 别名 分支

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

5.3、代码拉取

从远程库中将代码拉取到本地,更新本地库代码

git pull 项目名 分支名

在这里插入图片描述

5.4、代码克隆

git clone 克隆地址连接

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

注意

​ 克隆时,由于在创建远程库时使用的是公共库,所以克隆不需要登录用户账号。

克隆的操作

  • 克隆会拉取远程库代码到本地库
  • 初始化本地仓库
  • 创建别名

5.5、远程库团队内邀请其他用户

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

5.6、远程库跨团队协作

团队外请求

在这里插入图片描述

在这里插入图片描述

团队内收到请求

在这里插入图片描述

在这里插入图片描述

5.7、GitHub的ssh免密登录

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

6、Idea集成Git

6.1、配置Git忽略文件

如下图这些文件

在这里插入图片描述

问题1:为什么要忽略他们?

答:与项目实际功能无关,不参与服务器上部署运行。把他们忽略掉能够屏蔽IDE工具之间的差异

问题2:怎么忽略?

1)创建忽略规则文件xxx.ignore(前缀名随便起,建议git.ignore)

git.ignore文件模板内容如下:

	*.class
	*.log
	*.ctxt
	*.mtj.tmp/
	*.war
	*.nar
	*.ear
	*.zip
	*.tar.gz
	*.rar
	*.iml
	
	.classpath
	.project
	.settings
	target
	build
	.idea
	.gradle

.gitconfig文件中添加git.ignore配置文件

[core]
	excludesfile = C:/Users/jie/git.ignore

6.2、定位Git程序

在这里插入图片描述

6.3、初始化本地库

在这里插入图片描述

6.4、添加到暂存区

6.5、提交到本地库

在这里插入图片描述

在这里插入图片描述

6.6、切换版本

idea切换代码版本

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

6.7、创建分支

1、右键项目

在这里插入图片描述

2、idea右下角

在这里插入图片描述

3、分支设置

在这里插入图片描述

6.8、切换分支

在这里插入图片描述

6.9、合并分支

6.9.1、正常合并

在这里插入图片描述

6.9.2、冲突合并

出现代码冲突时:

在这里插入图片描述

在这里插入图片描述

7、iead集成GitHub

7.1、设置GitHub账号

账号密码登录
在这里插入图片描述

口令登录

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

在这里插入图片描述

7.2、分享工程到GitHub

在这里插入图片描述

在这里插入图片描述

7.3、push推送本地库到远程库

在这里插入图片描述

使用ssh免密登录

在这里插入图片描述

7.4、pull拉取远程库到本地库

注意:push是将本地库代码推送到远程库,如果本地库代码跟远程库代码版本不一致,push的操作是会被拒绝的,也就是说,要想push成功,一定要保证本地库的版本要比远程库的版本高!

因此一个成熟的程序员在动手改本地代码之前,一定会先检查下远程库跟本地代码的区别!如果本地的代码版本已经落后,切记要先pull拉取一下远程库的代码,将本地代码更新到最新以后,然后再修改,提交,推送。

在这里插入图片描述

注意:pull是拉取远端仓库代码到本地,如果远程库代码和本地库代码不一致,会自动合并,如果自动合并失败,还会涉及到手动解决冲突问题。

7.5、clone克隆远程库到本地中心

在这里插入图片描述

6、Gitee码云

6.1、简介

由于GitHub服务器在国外,使用GitHub作为项目托管网站,如果网速不好的话,严重影响使用体验,设置会出现登录不上的情况。针对这个情况,大家也可以使用国内的项目托管网站-----码云

码云是开源中国基于Git的代码托管服务中心,网址是https://gitee.com/,使用方式跟github一样,而且它还是一个中文网站。

6.1、idea集成gitee

在这里插入图片描述

6.2、Idea集成Gitee码云

方法1:将本地代码集成到gitee上

在这里插入图片描述

方法二:使用push将本地代码传递到gitee远程库中

1、首先在远程库中创建本地仓库,复制本地仓库的链接

在这里插入图片描述

从gitee中拉取代码

在这里插入图片描述

6.3、码云连接GitHub进行代码的复制和迁移

在这里插入图片描述

github中更新代码同步到gitee中

在这里插入图片描述

其他

删掉本机用户登录账号

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值