Git的学习(0)----------前言

0.前言

  1. 为什么要使用git呢

    比如自己在写项目代码的时候,先完成了功能A,进行保存后,之后需要添加功能B,然后在原来的基础上修改,不仅仅添加了新的包,新的配置文件,新的代码,还在用来实现功能A的代码添加功能B需要的个别方法,这样子功能A的代码不仅仅包含属于实现自己功能的代码,还包括B需要的部分代码。突然,这个时候,B功能不想要了,那么我们需要恢复到只有功能A的代码,即需要删除有关于功能B的代码,比如配置文件,代码,包等等,那就很麻烦,你需要一点点删除。

  2. 上述还只是你自己写项目代码的时候,若出现了,多人合作的话,可想而知,工作量更加大,因此我们急需版本控制。版本控制可以方便查看更改历史记录备份以便恢复以前的版本的软件工程技术

1.版本控制

  1. 版本控制(Revision control)是一种在开发的过程中用于管理我们对文件、目录或工程等内容的修改历史方便查看更改历史记录备份以便恢复以前的版本的软件工程技术
  2. 是用于管理多人协同开发项目的技术。

2.版本控制分类

1.本地版本控制

记录文件每次的更新,可以对每个版本做一个快照,或是记录补丁文件,适合个人用。

2.集中版本控制(SVN)

  1. 所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新上传自己的修改

  2. 所有的版本数据都存在服务器上,用户的本地只有自己以前所同步的版本,如果不连网的话,用户就看不到历史版本,也无法切换版本验证问题,或在不同分支工作

  3. 而且,所有数据都保存在单一的服务器上,假如这个服务器会损坏,这样就会丢失所有的数据,解决方法定期备份。

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

3.分布式版本控制(Git)

  1. 所有版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时push到相应的服务器或其他用户那里。由于每个用户那里保存的都是所有的版本数据,只要有一个用户的设备没有问题就可以恢复所有的数据,但这增加了本地存储空间的占用

  2. 不会因为服务器损坏或者网络问题,造成不能工作的情况。

  3. 但是会有安全隐患,因为代码是每个用户下都有,若此用户辞职,则有可能会携带所有代码跑路。

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

3.Git与SVN的区别

  1. SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都是自己的电脑,所以每次都要先从中央服务器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。

    集中式版本控制系统是必须联网才能工作,对网络带宽要求较高

  2. Git是分布式版本控制系统没有中央服务器每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己电脑上。

    协同的方法是这样的:比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。Git可以直接看到更新了哪些代码和文件!(这个场景后面会演示)

4.Git下载

  1. 使用淘宝镜像下载:

    http://npm.taobao.org/mirrors/git-for-windows/  我下载的是 version 2.28.0.windows.1
    
  2. 安装:一直下一步就好了(当然你可以设置安装路径),安装完毕就可以使用了!

  3. 当你安装好后,你可以随意在个文件夹里面或者桌面上点击个右键,看到这两个图标。

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

  4. 通常情况下,我们使用的是git bash here 就是类是linux终端,git gui here 是图形界面(不建议使用)。

  5. 而我的电脑使用git自带的终端,稍微有点慢,因此使用的是win10的终端,因为在安装git的时候,会自动帮我们配置好环境变量。因此可以直接使用。如下,安装成功了。

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

5.Git的必要配置

配置用户与邮箱(必须要的),相当于身份识别。

# 用户帐号
git config --global user.name "jin"
# 邮箱
git config --global user.email xxxxxxx@qq.com

下面则是查看系统配置信息

# 查看系统config 是存在git安装目录下的/etc/gitconfig中
# 如果不知道自己的git安装在哪里,可以输入下面命令,会得到一行
# http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt 
# 我git的安装位置就是在c盘下Program Files/Git里面
git config --system --list

# 查看当前用户(global)配置 是在当前用户登录用户的配置中C:\Users\{自己用户名}\.gitconfig中
# 一开始如果你没有配置用户名和邮箱,直接输入下面密码则为空
git config --global --list

# 直接列出全部配置信息
git config -l

# 额外小知识 win终端清屏 命令 cls

![在这里插入图片描述](https://img-blog.csdnimg.cn/20201220121719202.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3h1ZXlpamlu,size_16,color_FFFFFF,t_70

6.Git的架构

  1. 架构图稍微理解下,等掌握后面知识点,甚至操作几次后,就会发现这个架构图,特别简单。
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VOfTvGtI-1608438508444)(C:\Users\jin\AppData\Roaming\Typora\typora-user-images\1607662965370.png)]

  2. git的工作流程一般是这样的:

    1、在工作目录(工作区)中添加、修改文件;

    2、使用add将需要进行版本管理的文件先暂时放入暂存区域(里面可以放多个文件);

    3、之后需要将暂存区域的文件(可以是多个文件)提交(commit)到本地git仓库,生成版本,进行版本控制。

  3. 工作区:就是你平时存放项目代码的地方。

    版本库:工作区中有一个隐藏目录.git,这个目录不属于工作区,而是git的版本库,是git管理的所有内容。

    暂存区:版本库中包含一个临时区域,保存下一步要提交的文件,你可以理解为暂时放这里保存一下。

    分支:版本库中包含若干分支,提交的文件存储在分支中(后面有专门一节讲分支)。

其他相关文章学习

Git的学习(0)----------前言

Git的学习(1)----------相关命令

Git的学习(2)----------分支学习

Git的学习(3)----------idea中使用Git

Git的学习(4)----------回到过去节点

Git的学习(5)--------总结

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值