Git学习:Git入门了解


推荐学习文档缪雪峰Git 地址 :https://www.liaoxuefeng.com/wiki/896043488029600

1. 为什么需要git?

1.1 问题:

个人在工作或者学习的时候会遇到这种事情:

我们在使用word文档编写文章和材料时,有这一种情况,想要更改一下文章中的一部分内容,但是又担心更改后又想要用原来的东西。所以就会形成下面的这种情况。

写论文:一个论文可能要修改很多次,可能会产生很多个版本

  • Java入门到精通.word 原版
  • Java入门到精通.word 原版2019.4.20 XXXX.修改了 java历史
  • Java入门到精通.word 修订版2019.5.20 XXXX.修改了 名字错误
  • Java入门到精通.word 终极版2019.6.20 XXXX.修改了 名字错误
  • Java入门到精通.word 最终版2019.7.20
    然后自己都不清楚到底更改过哪些文字,自己需要的那个版本的文档又在哪里。所以我们需要一个东西来进行版本的控制管理

那么这个问题如果发展到一群人?

比如说我们公司协同开发一个网站:

  • 总共的代码就一份
  • 但是会有多个人去共同开发
  • 每个人都有每个人的事情,我们无法做到统一;

1.2 解决方案:集中式处理

  • 每个人修改完毕,就提交到一个大家都能访问到的服务器;

  • 每个人要增加或者修改代码,需要同服务器上拿来最新的代码;

  • 修改完毕后,再次提交,保证服务器中有最新的代码;

在这里插入图片描述

1.3 解决方案优化:分布式处理

  • 每个人写完代码后,立马将更新的东西告知所有人;
  • 每个人都拥有全部的代码;
  • 每个人都是一个独立的服务器代码库;
  • 假设一个人的代码丢了,直接从别人那个拷贝一份即可;
    在这里插入图片描述

1.4 版本控制

在开发或者工作中,你每一次修改都会产生一次对应的记录,记录修改者,修改的内容,修改的时间等等。

方便开发人员及时获取最新的动态,并且知道更新了什么地方。

简单的说,就是多人协同开发的一个基础

1.5 分布式 VS 集中式

分布式: 开源项目

分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?比方说你在自己电脑上改了文件A,你的同事也在他的电脑上改了文件A,这时,你们俩之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。

  • 不会被服务器限制
  • 所有人可以拿到最新的源代码
  • 安全。

1.6 集中式: 公司内部项目

集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆。

  • 只有一个公共的服务器
  • 所有人写代码之前,需要去拿最新的代码过来
  • 写完之后,要及时提交代码到服务器
  • 不安全。
  • 集中式版本控制系统最大的毛病就是必须联网才能工作

1.7 Git vs SVN

SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都是自己的电脑,所以首先要从中央服务器得到最新的版本,然后工作,完成工作后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,对网络带宽要求较高。

**Git是分布式版本控制系统,**没有中央服务器,每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己电脑上。协同的方法是这样的:比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。


2. Git起源

Git 是世界上最先进的分布式版本控制系统

Git是免费的,开源的

创始人:Linus Benedict Torvalds

在这里插入图片描述

  • linux最初只有他一个人维护,后来慢慢越来越多的人加入修改的建议,提交代码;
  • 所有人的代码,都从世界各地发给他,由他一个人编写进Linux内核中。他慢慢的就烦了。
  • 找一个可以进行版本控制的平台 ; BitKeeper 免费的给Linux社区使用;
  • Linux社区中存在许多大佬,他们试图破解BitKeeper协议;BitKeeper就不愿意再免费给他们使用了;
  • 于是乎 Linus ,他花了两周时间,用c自己写了一个版本控制的管理系统,而且是分布式的;
  • 这就是后来大名鼎鼎Git ;
  • 后来有人基于个Git搭建了开源的平台 , Github 开源所有人都可以去使用的
  • 我们也可以搭建自己的版本库—GitLib。
  • 2019年,在中国的今天,我们选择使用 码云 Gitee 来作为项目源代码存放的地方
    • 不受网络的限制
    • 国人开发
    • 社区十分活跃
  • 类似的平台还有Coding等等。

3. 下载和安装Git

3.1 Git的下载

官网下载地址:https://git-scm.com/ 官网下载十分的漫长,不推荐使用;

淘宝Git镜像下载地址:http://npm.taobao.org/mirrors/git-for-windows/ 【推荐】

  1. 此处以淘宝镜像下载为例,打开地址链接,尽量选择最新的版本。
    在这里插入图片描述

  2. 选择自己的电脑位数,一般都是64位的。
    在这里插入图片描述

  3. 点击下载即可
    在这里插入图片描述

3.2 Git的安装

  1. 一路傻瓜式安装即可;
    安装完成后,打开我们自己安装路径下的git文件,可以看到两个Git的exe文件
    在这里插入图片描述

我们打开git-bash.exe,;
在这里插入图片描述

【注意】:按住ctrl+鼠标滚动可以调节字体的大小


4. Linux常用命令

pwd:查看当前所在目录

cd :切换文件夹

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

ls :列出清单

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

点击Tab键可以补全

我们现在进入我们的桌面

清空屏幕: clear

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

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

创建一个文件: touch 文件名

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

查看历史记录 : history

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


5. git设置用户名和邮箱(必须设置)

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

git config --global user.name "name"
git config --global user.email 邮箱号@qq.com

必须要配置这两个属性。
在这里插入图片描述

查看Git全部的配置;

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

在这里插入图片描述
在这里插入图片描述

这些信息既然可以保存,那么到底保存在我们系统的什么地方了呢?

git配置文件存放地址:

  • 用户配置的global文件。 c盘:/用户/${当前用户}/ .gitconfig
    在这里插入图片描述

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

6. Git 工作理论

Git工作目录分为四层

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

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

7. 获得一个Git仓库

  • 本地搭建一个仓库
    • 随便在一个位置建立一个文件夹

    • 在文件夹中右键 , git bash here ,在这个文件夹下打开git命令行
      在这里插入图片描述

    • 输入命令 git init ;

    • 发现在文件中多了一个隐藏的文件夹 .git
      在这里插入图片描述
      在这里插入图片描述

    • 至此,一个本地的git仓库就搭建成功了。

    • 我们先在工作目录下创建一westos.txt , 写入一段话,Hello,git
      在这里插入图片描述

    • 通过git add命令将这个文件添加到暂存区 , 通过 git status 查看当前状态
      在这里插入图片描述

    • 暂存区对应 :.git隐藏文件下的 index文件

    • 我们通过 git commit -m “注释” 提交到本地仓库

    • 通过git status 查看是否提交成功!

    • 在这里插入图片描述

    • 本地测试OK;

  • 远程克隆一个仓库 git clone []
    • 我们可以github或者码云上去克隆一个项目;(马云上的能比较快点)
      在这里插入图片描述
      在这里插入图片描述

8.搭建自己的远程仓库

我们这里使用码云 : https://gitee.com/

  • 注册账号,注册的时候可以写自己的个性域名
  • 比如说我的叫 : https://gitee.com/kuangstudy
  • 登录成功后可以浏览一会;

什么是码云

码云是开源中国社区2013年推出的基于 Git 的完全免费的代码托管服务,这个服务是基于 Gitlab 开源软件所开发的,我们在 Gitlab 的基础上做了大量的改进和定制开发,目前已经成为国内最大的代码托管系统,致力于为国内开发者提供优质稳定的托管服务。

创建你的第一个仓库

https://gitee.com/help/articles/4122

任务:

  • 搭建一个远程仓库
  • 克隆一个远程仓库到本地
  • 修改ReadME.md
  • push到码云远程仓库
  • 查看提交之后到远程的信息

将本地电脑码云连接起来

  • 打开用户目录下,找到id_rsa.pub
    在这里插入图片描述
    在这里插入图片描述

解决问题:没有id_rsa文件

ssh-keygen -t rsa -C "24736743@qq.com"

ssh-keygen -t rsa -C "youremail"

7. IDEA中使用Git

  1. 选择设置**
    在这里插入图片描述

  2. 配置git
    在这里插入图片描述

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

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

  5. 配置完这一步,项目文件中,产生了一个 .git文件夹,说明项目成立一个git项目(右键—》show in explorer)
    在这里插入图片描述

  6. 我们可以选择手动提交,也可以使用IDEA提交,我们选择使用IDEA
    在这里插入图片描述

  7. 填写提交的信息
    在这里插入图片描述
    努力加载中
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

远程仓库: === 网盘

可以多个人协同开发;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值