Git学习——分布式版本控制系统

Git学习——分布式版本控制系统

1.什么是Git

Git是现在世界上最流行的分布式版本控制系统。
版本控制系统又是什么呢?
我们在使用Word编写文章或者材料的时候,有这样一种情况,想要更改一下文章中的一部分东西,但是又怕改了之后又想用原本的东西。所以一般我们都会新建一个XXX01.doc的word文件,然后等到下次我们又会新建一个XXX02.doc的文件。这样一直更改下去,就会变成这样:
在这里插入图片描述
然后你就不知道到底自己改过的文字现在变成了什么样子,或者自己想要的资料在哪里。然后你就头变得巨大。
最后你想了一个办法,每次更改记录一下更改的日期和具体更改的内容,就成了下面这种情况了:
在这里插入图片描述
我们的代码管理也是一样,在一个项目中一般情况下是多人合作完成代码的编写。如果说没有一个版本管理控制,那么这个项目将会乱成一锅粥。

2.Git的诞生故事

Git的诞生是应着Linux而产生的,早在1991年Linux之父Linus Benedict Torvalds编写出这个服务器软件系统,当时的Linux还没有现在这么强壮。Linux的理念就是开源,所以Linus Benedict Torvalds讲这个系统的开源代码发到互联网上,后来就慢慢的有很多全国各地的大佬们加入到Linux的改善中去。当时世界各地的志愿者把源代码文件通过网络发送给Linus Benedict Torvalds,然后通过Linus Benedict Torvalds人工的方式合成代码。然后时间一久Linus Benedict Torvalds就觉得厌烦了。然后他就想找个版本控制的系统将Linux放入,但是当时的一些版本控制系统都是付费的,与Linux开源免费的理念不符合,所以就不了了之了。
直到2002年BitKeeper的东家BitMover公司出于人道主义精神,授权Linux社区免费使用这个版本控制系统,这才开始了Linux的版本控制之旅。但是好景不长,Linux的开发者中有人试图破解BitKeeper的协议,这个举动就引起了该公司的不满,因此就收回了Linux社区的免费使用权。
紧接着Linux的开发人员仅仅用了两个礼拜时间写出来了一个分布式版本控制系统,也就是Git!直到现在Git也是最流行的分布式管理系统!

3.集中式vs分布式
  • 集中式处理:
    集中式处理的意思是每个人修改完的代码都要被交到一个大家都能访问到的服务器中,如下图:
    在这里插入图片描述
  • 分布式处理
    分布式处理是没有中央服务器的(但是通常会有一台服务器用于大家之间的数据交换),每当一个人修改代码的时候就会将最新的代码给每个人分发一份,所以不害怕数据丢失,比较安全。如图:
    在这里插入图片描述
4.Git的下载安装
  • Git下载:

    Git官网:https://git-scm.com/【不推荐从官网下载,速度会非常的慢】
    使用阿里云镜像下载:http://npm.taobao.org/mirrors/git-for-windows/

    选择版本
    在这里插入图片描述
    选择自己电脑的位数,一般都是64位。bash是Linux风格,cmd是windows风格。一般我们习惯用Linux风格的。
    在这里插入图片描述

  • Git安装

    下载完后选择自己常用的软件安装目录安装
    在这里插入图片描述
    安装后我们可以看到两个启动Git的exe文件
    在这里插入图片描述

    打开git-bash.exe,按住Ctrl+鼠标滚动可以调节字体的大小
    在这里插入图片描述

5.Linux常用命令学习

pwd:查看当前所在目录

cd :切换文件夹

  • cd ~ :切换到用户所在目录
  • cd / :切换到根目录

ls :列出清单

  • ls -a : 就是 ls -all,列出所有

清空屏幕: clear

创建一个文件夹 : mkdir 文件名

删除一个文件夹: rm -r test

创建一个文件: touch 文件名

向文件中写入内容 : echo 内容 > 文件名

查看历史记录 : history

查看命令帮助文档: 命令 --help

6.Git设置——邮箱和用户名设置(必须设置)

git安装完之后第一步就应该是这是用户名和邮箱;相当于一个标识,你之后每次一提交项目,都会附带这个信息;
配置邮箱和用户名:

git config --global user.name "name"
git config --global user.email 邮箱

在这里插入图片描述
查看Git的全部配置:

 git config -l  # 查看git的全部配置

在这里插入图片描述

git config --global --list #查看当前用户的配置

在这里插入图片描述
Git文件存放地址:

  • 用户配置文件:C:/Users/用户名/.gitconfig

    在这里插入图片描述
    打开此文件可以看到我们配置的参数,当然也可以手动在配置文件中更改,效果一样
    在这里插入图片描述

  • 系统配置文件: \Git安装路径下面\mingw64\etc\gitconfig
    在这里插入图片描述
    在这里插入图片描述

7.Git工作原理:

Git工作目录分为四层:

  • Git远程仓库 : GitHub、码云等等,负责托管我们的项目 , 需要从Git本地仓库提交过来;
  • Git本地仓库 :我们看不到 , 通过暂存区提交过来
  • 暂存区 :我们看不到,提交的信息暂存在这里
  • 工作目录 : 就是自己电脑上的一个属于git的文件夹;

如图:
在这里插入图片描述
当我们需要向码云或GitHub上提交我们的项目时,首先将项目放在本地的工作目录下,然后使用git add .将项目存入暂存区,然后将暂存区的项目使用提交到Git的本地工作目录下,最后再将项目push到Git远程仓库进行代码托管。如果想要获取Git远程仓库的项目,道理也是一样,只是反向一层一层的下来。

8.Git仓库提交与克隆

本地操作:

  • 随便在任意位置新建一个文件夹
  • 在文件夹中右键,选择git bash here,在这个文件夹下打开git命令行
    在这里插入图片描述
    输入命令git init;,我们发现文件夹下生成了一个.git的隐藏目录目录(需要设置显示隐藏目录才能看得见),这个.git出现就说明git仓库搭建成功了
    在这里插入图片描述
    然后我们将我们的项目拷贝到这个目录下,然后输入命令git add .将项目存入暂存区中。
    在这里插入图片描述
    然后我们可以使用git status查看当前的状态,显示未提交
    在这里插入图片描述

搭建自己的远程仓库:
可以使用GitHub或者码云,我们这里使用码云。
为什么使用码云?
码云是开源中国社区2013年推出的基于 Git 的完全免费的代码托管服务,这个服务是基于 Gitlab 开源软件所开发的,我们在 Gitlab 的基础上做了大量的改进和定制开发,目前已经成为国内最大的代码托管系统,致力于为国内开发者提供优质稳定的托管服务。

  • 注册码云
    在这里插入图片描述
    在这里插入图片描述
    等到注册成功之后,我们就进入了自己的远程仓库,就可以创建自己第一个远程仓库了
  • 创建自己第一个仓库
    在这里插入图片描述
    在这里插入图片描述
    我们的第一个仓库就这样创建好了
    在这里插入图片描述
    复制仓库地址

在这里插入图片描述

连接码云和本地仓库:

使用git remote add origin 项目地址连接远程仓库和本地仓库
在这里插入图片描述

然后我们可以使用git remote -v查看远程库信息
在这里插入图片描述
克隆仓库到本地
在这里插入图片描述
设置用户名和邮箱
在这里插入图片描述

然后我们通过 git commit -m “注释” 提交到本地仓库
在这里插入图片描述
提交到远程仓库:

将本地仓库的项目使用git pull origin master命令push到远程仓库

在这里插入图片描述
这样我们本地的项目就在远程仓库托管了,最后我们在码云上查看一下
在这里插入图片描述

9.IDEA中使用Git

选择设置
在这里插入图片描述
配置git
在这里插入图片描述

打开项目
在这里插入图片描述

在IDEA中配置项目集成到Git中;
在这里插入图片描述在这里插入图片描述

配置完这一步,项目文件中,产生了一个 .git文件夹,说明项目成立一个git项目
在这里插入图片描述

我们可以选择手动提交,也可以使用IDEA提交,我们选择使用IDEA

在这里插入图片描述

填写提交的信息
在这里插入图片描述

努力加载中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值