【Git】Git安装及操作、IDEA集成Git、GitHub、Gitee

第一章 Git概述

1.1 Git是什么

Git是一个免费的,开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目。
Git易于学习,占地面积小,性能极快,具有廉价的本地库,还有方便的暂存区域和多个工作流分支等特性。
Git官网
官网地址:https://git-scm.com

1.2 什么是版本控制系统

版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统。
版本控制最重要的一点就是可以记录文件修改历史记录,用户可以查看历史版本,方便版本切换。

1.3 版本控制工具

CVS、SVN、VSS…
(1)集中式版本控制工具
集中化的版本控制系统都有一个单一的集中管理服务器,保存所有文件的修订版本,协同的工作人员都是通过客户端连接到这台服务器,取出最新的文件或者提交更新。管理员能够轻松掌控每个开发者的权限,开发人员也可以在一定程度上看到项目中的其他人正在做什么。管理一个集中化的版本控制系统,要远比在各个客户端上维护本地数据库来得轻松。
而集中式的版本控制系统的缺点就是中央服务器的单点故障。

(2)分布式版本控制工具
Git、Mercurial、Bazaar、Darcs…
像Git这种分布式的版本控制工具,客户端提取的不是最新版本的文件快照,而是把代码仓库完整低镜像下来(存储在本地库)。任何一处协同工作的文件发生故障,事后都可以用其他客户端的本地仓库进行恢复。每个客户端的每一次文件提取操作实际上都是一次对整个文件仓库的完整备份。
分布式版本控制工具相比于集中式版本控制工具的优点:
*服务器断网的情况也能开发。(因为版本控制在本地进行)
*每个客户端保存的都是完整的项目。(包含历史记录)

1.4 Git工作机制

请添加图片描述

1. 5Git和代码托管中心

代码托管中心是基于网络服务器的远程代码仓库,一般称为远程库。
(1)局域网
GitLab
(2)互联网
GitHub(外网)
Gitee码云(国内网站)

第二章 Git安装

1.官网地址:https://git-scm.com/
2.Git高速下载地址:https://npm.taobao.org/mirrors/git-for-windows/
3.安装步骤:
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述
请添加图片描述

选择Git Bash Here打开
请添加图片描述
请添加图片描述

第三章 Git常用命令

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

注:Git里的一些命令和Linux命令是通用的。

3.1 设置用户签名

(1)语法:

git config --global user.name 用户名
git config --global user.emaill 名称

(2)如何查看是否配置成功:
C盘 —> 找到Git客户端所对应的用户 —> 查看 .gitconfig 配置文件

请添加图片描述
(3)签名的作用是区分不同操作者身份。用户的签名信息在每一个版本的提交信息中能够看到,以此确认本次提交来自谁。Git首次安装必须设置用户签名,否则无法提交代码。
(4)这里所设置的用户签名和将来登录GitHub(或者其他代码托管中心)的账号没有任何关系。

3.2 初始化本地库

(1)语法:

git init

(2)在本地磁盘下新建一个目录,通过Git Bash Here进入客户端,初始化以后会生成 .git 目录(.git 目录在Windows里面默认隐藏,通过查看 —> 勾选隐藏的项目后可以看到)
请添加图片描述

3.3 查看本地库状态

(1)语法:

git status
请添加图片描述

3.4 文件(hello.txt)新建、添加、上传

(1)新建文件:

vim hello.txt

(2)查看文件:

cat hello.txt
head -n 5 hello.txt
tail -n 3 hello.txt

(3)将文件添加到暂存区:

git add hello.txt

(4)将文件从暂存区删除:

git rm -cached hello.txt

(5)将文件提交到本地库:

git commit -m “first commit” hello.txt
注:-m " xxxx "参数可以添加日志信息
请添加图片描述
(6)查看版本信息
git reflog
请添加图片描述

(7)查看版本详细信息:

git log
请添加图片描述

(8)文件修改过后,需要重新添加到暂存区,再上传到本地库。
请添加图片描述

3.5 版本穿梭

(1)语法:

git reset --hard 版本号
git reset 版本号请添加图片描述
(2)Git切换版本,底层其实移动的是Head指针。

第四章 Git分支操作

4.1 什么是分支

在版本控制过程中,如果同时推进多个任务,就可以为每个任务创建单独的分支。使用分支意味着查询员可以把自己的工作从主线上分离开来,开发自己分支的时候,不影响主线分支的运行。(分支可以简单理解为副本,一个分支就是一个单独的副本。)
请添加图片描述

4.2 分支的好处

(1)同时并行推进多个功能的开发,提高开发效率
(2)各个分支在开发过程中互不影响

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

git branch 分支名
请添加图片描述

4.3.2 创建分支

git branch hot-fix
请添加图片描述

4.3.3 切换分支

git checkout hot-fix
请添加图片描述

4.3.4 合并分支

git merge hot-fix
请添加图片描述

4.3.5 解决合并分支时的冲突问题

(1)手动更改存在冲突的文件
(2)将更改后的文件提交到暂存区
(3)执行提交(注意:此时 git commit 命令不能带文件名)
请添加图片描述

4.4 分支操作的底层逻辑

创建分支的本质就是多创建一个指针。当前指针指向哪个分支,就对哪个分支进行操作。

第五章 Git团队协作机制

5.1 团队内协作
5.2 跨团队协作

第六章 GitHub操作

6.1 官网地址

https://github.com/
请添加图片描述

6.2 创建GitHub远程仓库

请添加图片描述
请添加图片描述
请添加图片描述

6.3 远程仓库操作
命令名称作用
git remote -v查看当前所有远程地址别名
git remote add 远程地址起别名
git push 别名 本地分支推送本地分支上的内容到远程仓库
git clone 远程地址将远程仓库的内容克隆到本地
git pull 别名 远程分支拉取远程库分支内容,与对应本地库分支合并
6.3.1 创建远程仓库别名

git remote add 远程地址
请添加图片描述

6.3.2 推送本地库分支到远程库

git push 别名 本地分支

(1)本地库显示推送成功

请添加图片描述
(2)远程库显示推送成功
*将我的账户添加到凭据管理器里
请添加图片描述
*添加成功
请添加图片描述
(3)远程库查看
请添加图片描述

6.3.3 将远程库拉取到本地库

git pull 别名 远程分支
请添加图片描述

6.3.4 克隆远程库到本地库

(1)克隆远程库时可以不用登录远程账号。
(2)clone会进行如下操作:拉取代码、初始化本地仓库、创建别名。

第七章 IDEA集成Git

7.1 配置Git忽略文件

(1)Eclips特定文件请添加图片描述

(2)IDEA特定文件
请添加图片描述

(3)Maven工程的target目录
请添加图片描述

(4)为什么要忽略这些文件?
这些文件与项目的实际功能无关,不参与服务器的部署运行。忽略这些文件能够屏蔽IDE工具之间的差异。

(5)如何忽略这些文件?

  • 创建忽略规则文件(前缀名可以随意取,建议是git.ignore)
    这个文件的存放位置原则上可以随意放置,但是为了引用~/.gitconfig文件,建议放在用户家目录下。

*.class
*.log
.mtj.tmp/
*.ctxt
*.zip
*.rar
*.nar
*.ear
*.via
*.tmp
*.err
*.tat.gz
*.jar
.warhs_err_pid
.classpath
.project
.settings
target
.idea
*.xml

  • 在.gitconfig文件中引用忽略配置文件(此文件在Windows的家目录中)

[user]
name = zrx
email = zrx@qq.com
[core]
excludesfile=C:\Users\huawei\git.ignore

注意:这里使用的是正斜线(/),不是反斜线(\)

7.2 定位Git程序

(1)创建Maven工程
(2)在Maven工程下添加git
请添加图片描述

7.3 初始化本地库

(1)VCS(版本控制工具设置) ----->VCS Operations -------> Create Git Repository
请添加图片描述
请添加图片描述
(2)添加成功
请添加图片描述

请添加图片描述

7.4 添加到暂存区

(1)文件颜色:
红色 ----------> 表示还没有添加到暂存区
绿色 ----------> 表示已经添加到暂存区
灰色 ----------> 被忽略的文件
黑色 ----------> 文件提交到本地
蓝色 ----------> 提交到本地库的文件被修改了
请添加图片描述

(2)如何添加文件到暂存区
请添加图片描述

7.5 提交到本地库

请添加图片描述
请添加图片描述

7.6 切换版本

(1)当文件被修改以后需要重新添加到暂存区,再重新提交本地库,提交本地库时IDEA会出现如下提示信息:
请添加图片描述

注意:在新版的IDEA中点击commit以后不会直接出现版本对比信息,双击需要提交的文件就会出现版本对比。

(2)更换版本:
请添加图片描述

请添加图片描述

更换以后头指针指向改变:

请添加图片描述

7.7 创建分支

请添加图片描述

请添加图片描述

7.8 切换分支

请添加图片描述

7.9 合并分支

(1)正常合并
请添加图片描述

(2)冲突合并
在不同分支更改了同一个文件的内容后,再合并分支,则会出现冲突合并,此时需要手动更改有冲突的地方。
具体操作如下:
请添加图片描述
请添加图片描述

请添加图片描述
请添加图片描述

第八章 IDEA集成GitHub

8.1 设置GitHub账号

(1)在IDEA中找到GitHub:
File >> Settings >> GitHub
注:如何没有的话,则在Plugins里先下载。
(2)添加账号:
多种登录方式
请添加图片描述
*Log In via GitHub
通过账号密码登录(难登录的时候可以选择口令登录)
*Log In with Token
先通过以下步骤,在Github里面新建口令。
请添加图片描述
在这里插入图片描述
请添加图片描述
在IDEA里通过口令登录:
请添加图片描述

8.2 分享工程到GitHub

请添加图片描述
请添加图片描述

8.3 push推送本地库到远程库

请添加图片描述
注意:
(1)有两种推送方式,在IDEA里默认使用https协议的链接,通过https的方式推送有时候不会成功(和网络有关),可以通过ssh免密登录。
(2)push是将本地库代码推送到远程库,如果本地库代码和远程库代码版本不一致,push的操作就会被拒绝。要想push成功,那么本地库的版本要比远程库的版本高。因此在更改本地库的代码前,要先检查远程库和本地库的区别。如果本地库的代码版本已经落后,就要先pull拉取一下远程库的代码,将本地库的代码更新到最新以后再修改,提交,推送。

8.4 pull拉取远程库到本地库
8.5 clone克隆远程库到本地

第九章 国内代码托管中心—码云

9.1 简介

码云是开源中国推出的基于Git的代码托管服务中心,使用方式和GitHub一样。
网址:https://gitee.com/

9.2 码云账号登录与注册

请添加图片描述

9.2 创建码云远程登录仓库

请添加图片描述

请添加图片描述

9.3 IDEA集成Gitee

(1)File >> Settings >> Plugins
安装好Gitee之后,在Version Control里面就会有Gitee
请添加图片描述
(2)添加登录账号
请添加图片描述

9.3 Gitee操作

通过Gitee推送拉取代码的操作和GitHub的一样。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值