使用Git进行项目版本控制

文章目录

1、什么是Git?

GIT,全称是分布式版本控制系统,git通常在编程中会用到,并且git支持分布式部署,可以有效、高速的处理从很小到非常大的项目版本管理。分布式相比于集中式的最大区别在于开发者可以提交到本地,每个开发者通过克隆(git clone),在本地机器上拷贝一个完整的Git仓库。

本地式 VS 集中式 VS 分布式

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GG5ooPy1-1691719294411)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208142837991.png)]

2、安装Git

安装包素材:链接

也可以去官网下载你想要的版本

Git官网

点击图标进行安装

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3o2M8c68-1691719294413)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208110721176.png)]

点击下一步

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6Mr5CjwP-1691719294414)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208110753487.png)]

选择安装路径 —》点击下一步

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cVRE8Cb6-1691719294414)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208110851537.png)]

点击下一步

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Lu0v8oQG-1691719294414)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208110909102.png)]

点击下一步

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xwyiDCGi-1691719294415)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208110935288.png)]

点击下一步

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DQ6fbLQW-1691719294415)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208110950424.png)]

点击下一步

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-UHOeAEIV-1691719294415)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208111005281.png)]

点击下一步

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FGPi1JXp-1691719294415)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208111022526.png)]

点击下一步

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ae0Womik-1691719294416)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208111035429.png)]

点击下一步

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-P4cyCiA5-1691719294416)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208111101508.png)]

点击下一步

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ygu7UqlF-1691719294416)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208111115463.png)]

点击下一步

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OXvaPB4u-1691719294416)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208111132852.png)]

点击下一步

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OR3ovXQK-1691719294417)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208111149388.png)]

点击下一步

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0eozLlrE-1691719294417)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208111203195.png)]

点击下一步

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jWLFLP3R-1691719294417)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208111219528.png)]

点击安装 —》进行安装

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-f4vGX1Ze-1691719294418)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208111239616.png)]

安装完成

3、Git汉化

Git汉化分为两部分:汉化Git Bash和汉化Git GUI。

3.1 Git Bash汉化

Git Bash的汉化很简单,只需要在命令行界面点击右键-选择option-Windows-然后在里面将language设置成中文就可以了

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rZo6elOK-1691719294418)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208135336129.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OEtrN6u9-1691719294418)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208135340348.png)]

3.2 Git GUI汉化(了解)

Git GUI,想要设置成中文就显得没那么容易了。打开设置里面,全是密密麻麻的的英文,而且找了半天也没找到对应的语言设置,那么到底应该怎么设置Git GUI的中文显示呢?

其实Git GUI本身是真的没有这个语言设置选项的,所幸的是网上已有网友针对其开发出了对应的汉化包,我们只需要下载安装即可,具体可见https://github.com/stayor/git-gui-zh。

下载下来之后,将其放到安装目录下:/mingw64/share/git-gui/lib/msgs/zh_cn.msg,有可能Git的安装路径下面没有msgs这个文件夹,那么需要自己创建之后再将这个汉化包来放进去。这样就算是汉化完了。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PHGRhIp0-1691719294418)(E:\PRD\Images\image-20230805112512515.png)]

未设置前

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3oguWLTC-1691719294419)(E:\PRD\Images\image-20230805112636583.png)]

设置后,重新打开软件,你就会发现软件界面已经变成了熟悉的中文了。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VlP2LQq1-1691719294419)(E:\PRD\Images\image-20230805112900871.png)]

4、快速上手Git基本命令

只要学会如下Git的十个命令,在日常的开发工作中基本可以应付了。在后面的学习中进行详细了解。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dlSqI7hx-1691719294419)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208142952319.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oJBAUE40-1691719294420)(C:\Users\11\AppData\Roaming\Typora\typora-user-images\image-20221208143015276.png)]

5、Git是怎么运作的?

从两方面来了解Git是怎么运作的,第一个我们先认识一下Git的几个重要的区域,第二个是Git具体是怎么工作的。

首先我们来回顾下,我们在1中讲过,Git是一个分布式的版本控制系统,在这个分布式的版本控制系统中,它会有一个远程的服务器Server Computer,然后会有多个分布式的客户端Computer A与Computer B等,在分布式的客户端中如何想使用远程服务器中的最新代码,它就需要从远程的仓库里去拉取最新代码。在拉取最新代码到本地仓库后,它自己就能形成一个版本控制系统。这个版本控制系统除了可以跟远程仓库进行交互以外,也可以与其他的分布式客户端共享版本信息。然后即使再跟远程仓库断开连接的情况下,它也能够正常运转,因为它自身也是一个版本控制系统。

那么我们是如何将分布式客户端里的文件推送到远程的仓库中并自动生成版本号呢?首先我们来了解下几个重要的区域

6、工作区、暂存区、本地仓库、远程仓库的区别

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MpYp4RgB-1691719294420)(E:\PRD\Images\image-20221208143707889.png)]

6.1 工作区

工作区是指你当前正在工作的项目目录,其中包含了项目的源代码、资源文件和其他相关文件。工作区是你进行开发、修改和测试代码的地方。

6.2 暂存区

暂存区是Git版本控制系统中的一个概念,它是连接工作区和本地仓库的缓冲区域。在对工作区的修改进行提交之前,你可以使用 git add 命令将修改的文件添加到暂存区。暂存区允许你对即将提交的文件进行选择性的添加和修改,为你提供对提交更加精细的控制。

6.3 本地仓库

本地仓库是存储Git项目的完整历史记录和版本信息的地方。当你在项目目录使用 git init 命令时,Git会在你的项目目录中创建一个本地仓库,并开始记录项目的所有更改和提交历史。本地仓库只能被本地访问和管理,并且可以在本地进行回滚、分支管理等操作。

6.4 远程仓库

远程仓库是位于网络上的一个Git仓库,用于远程团队成员之间的代码共享和版本控制。一个远程仓库可以托管在代码托管服务(如GitHub、GitLab等)或者自建的私有服务器上。通过与远程仓库进行交互,你可以将本地的变更推送到远程仓库、获取最新的变更、与其他开发者协同工作等。

6.5 总结

简而言之,工作区是你当前正在进行开发的目录,暂存区是用于临时存放即将提交的文件的缓冲区域,本地仓库是存储Git项目完整历史记录和版本信息的地方,远程仓库是位于网络上用于代码共享和协同开发的Git仓库。它们在不同的层级上承担着不同的角色和功能,协同工作来提供版本控制和团队协作的能力。

6.6 排除不需要的文件

1. .gitignore文件的作用

.gitignore文件的主要作用是帮助开发者配置不需要加入版本管理的文件,同时提高代码质量。这个文件对所在的目录及其所有子目录均有效。例如,有些时候,你需要在Git的工作目录中加入某些需要的文件,例如一些新增的配置文件等,这时候就可以通过编辑.gitignore文件来排除这些不需要的版本控制的文件。

2. .gitignore 文件的语法如下:
  1. # 开头表示注释,# 后面的内容都会被 Git 忽略。可以使用反斜杠 \ 进行转义。
  2. / 表示目录,* 表示匹配任意字符(除斜杠外),? 表示匹配一个字符,[...] 表示匹配方括号内的任意一个字符。
  3. ** 表示递归匹配子目录及其子目录下的所有文件和文件夹。
  4. ! 表示取反,即不匹配该规则的文件或目录。
  5. *?[...][!...]{}()等符号前面可以加上 //**/ 来指定匹配路径的模式。
  6. / 结尾的模式只匹配该文件夹以及在该文件夹路径下的内容,但是不匹配该文件。
  7. /开始的模式匹配项目跟目录;如果一个模式不包含斜杠,则它匹配相对于当前 .gitignore 文件路径的内容,如果该模式不在 .gitignore 文件中,则相对于项目根目录。
  8. 如果一个路径在多个规则中出现,那么只有最后一个规则生效。
  9. 如果一个文件同时满足多个规则,那么只有第一个被匹配的规则生效。
3. Java项目中常用的.gitignore文件
# Compiled class file
*.class

# Eclipse
.project
.classpath
.settings/<
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值