Git史诗级入门教程

一、Git介绍

Git是一个开源的[分布式][版本控制系统],用于敏捷高效地处理任何或小或大的项目

1. Git 与 SVN 区别

2.1 去中心化

  GIT是分布式的,SVN不是:这是GIT和其它非分布式的版本控制系统,例如SVN,CVS等,最核心的区别。     

2.2 git仓库的任何一个拷贝都可以独立作为一个服务器来使用

2.3 在Git中文件有四种状态:

  未跟踪(untrack):表示文件为新增加的
  已修改(modified):表示修改了文件,但还没保存到git仓库中。
  已暂存(staged):表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中
  已提交(committed):表示文件已保存在git仓库中。

2.4 其它

  GIT没有一个全局的版本号,而SVN有:目前为止这是跟SVN相比GIT缺少的最大的一个特征。
  GIT的内容完整性要优于SVN:GIT的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏

2.5 直接记录快照,而非差异

  GIT把内容按元数据方式存储,而SVN是按文件:所有的资源控制系统都是把文件的元信息隐藏在一个类似.svn,.cvs等的文件夹里。
  直接记录快照,而非差异

2.6 直接记录快照,而非差异

  GIT分支和SVN的分支不同,分支在SVN中一点不特别,就是版本库中的另外的一个目录。

2.7 git存在分支

二、Git入门

1. 前置工作

首先我们需要注册码云账号,还需要安装Git

1.1 注册账号

链接: Git官网
点击链接进入,点击注册
在这里插入图片描述填写对应的信息
在这里插入图片描述注册成功后我们登录
在这里插入图片描述

1.2 码云基本使用

首先是建立共有仓库
进入主页,我们点击左上角的加号,点击新建仓库
在这里插入图片描述填写对应的信息,点击创建
在这里插入图片描述进入到对应页面,点击初始化
在这里插入图片描述在这里插入图片描述现在我们的仓库还是私有的,点击管理
在这里插入图片描述到这我们的仓库建立好了

然后我们建立文件或者文件夹到该仓库
建立文件
在这里插入图片描述在这里插入图片描述
建立文件夹
在这里插入图片描述
删除库
点击管理,找到旁边的删除仓库,把仓库名填进去,最后输入码云密码即可
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

1.3 Git安装

这边大家可以去看看这篇博客
链接: link

三、Git使用

1.Git的常用命令

git clone :将远程仓库clone到本地计算机。
git status :展示工作区及暂存区域中不同状态的文件。
git add :将内容从工作目录添加到暂存区。
git commit :所有通过 git add 暂存的文件提交到本地仓库。
git push :将本地仓库的记录提交到远程仓库。
git reset HEAD 文件名 :从暂存区移除指定文件。
git pull :拉取远程仓库的数据。
git init

这边我们假设有两个角色,一个是组长管理的码云的仓库,一个是组员要克隆组长的仓库使用

克隆

首先我们在本地电脑一个目录右键
在这里插入图片描述然后我们输入命令 git clone 加上组长给的链接
链接从码云上获取
在这里插入图片描述然后我们输入命名
在这里插入图片描述
此时我们文件夹就会有对应的文件
在这里插入图片描述在这里插入图片描述
cd到该文件夹,输入命名 ll 查看所有文件
在这里插入图片描述

2.案例

代码提交管理过程
代码区–》暂存区–》本地仓库–》远程仓库

首选先我们组员要写代码,加入了一个Demo1,而组长总仓库是没有的
在这里插入图片描述
首选我们输入命令git status :展示工作区及暂存区域中不同状态的文件
在这里插入图片描述
可以发现·Demo1.java是未跟踪状态
我们输入密码git add Demo1.java,然后再查看状态
在这里插入图片描述
在这如果输入命令 git reset HEAD Demo1.java,那么就回到我们先前状态
在这里插入图片描述

到这里就显示图片结果,然后我们提交到暂存区中
在这之前,我们需要输入命令设置邮箱密码
设置用户名/邮箱/密码
git config --global user.name “username”
git config --global user.email “email”
git config --global user.password “password”(密码如果没有设置那么后面就不会弹框验证)

设置完后输入命令 git commit -m ‘文件备注’,在输入git statuc
在这里插入图片描述
最后我们输入命令 git push 填写对应的码云账号密码(博主这里没有设置密码,所有可以直接运行)
在这里插入图片描述
到这我们到本地仓库看我们刚才建立的文件
在这里插入图片描述

同时提交两个
通过命名git add .
在这里插入图片描述

演示git pull命令

假如我们组长对于组员提交的文件不满意,对其Demo2进行了删除,对其Demo3进行了修改
在这里插入图片描述
现在我们没有同步时,组员这里还是跟原来一样Demo2没有删除,Demo3没有修改
在这里插入图片描述
在这里插入图片描述
在这我们组员输入git pull,在输入前面两个命令
在这里插入图片描述
在这里插入图片描述

get init初始化

首先我们假设项目已经搭建完毕
在这里插入图片描述那么现在我们组长要将该项目上传到我们的仓库中
在这里插入图片描述输入命令git init
在这里插入图片描述然后我们文件夹就会有一个.git文件
建立完毕后我们就需要关联,在关联前,我们需要在仓库中建立一个空的目录,这边博主直接重新建立一个仓库
我们出初始化的时候,把一下内容复制
在这里插入图片描述

这个地址输入的是克隆的地址

== 先输入
git remote add origin + 这个地址输入的是克隆的地址
==在输入
git pull --rebase origin master
==最后输入
git push -u origin "master"

在这里插入图片描述
然后就是上面的操作 git add . --》 git commit -m ‘本地远程关联’ --》git push
然后我们再到仓库看

在这里插入图片描述总结

组长:
1.在某一个工作区间搭建环境,ssm能够跑起来
2.在该工作区间中执行git init 命令,标记该工作区间有git管理
3.在gitee/github中新建仓库
4.通过 git remote add origin url 将本地仓库与远程仓库关联
5.将本地仓库与远程仓库进行同步
git pull --rebase origin master
执行git三部曲 add .commit push 将搭建好的环境推送到远程仓库

组员:

  1. 通过git clone 将组长搭建好的环境克隆到本地,并且保障项目能够正常运行
    2.测试修改/新增代码能够推送到远程仓库
    测试git add commit push 能否有用

2.3 特殊情况

冲突
首先组员将项目克隆

在这里插入图片描述当我们在克隆时后面添加了名字,那么该文件夹的名字也会是我们设置的名字

现在组长通过vi 加入文件
在这里插入图片描述此时按i键,窗口才允许输入
在这里插入图片描述按Esc键退出编辑窗口
在按:wq 保存编辑文件修改的内容,回到git命令窗口
在这里插入图片描述然后通过三部曲上传
在这里插入图片描述
在这里插入图片描述这个时候组员输入命令git pull
在这里插入图片描述这个时候组长在次修改order.java文件内容,然后通过三部曲提交
在这里插入图片描述这个时候组员也同时改内容,在没有同步的情况下加入了一个属性,然后提交,那么现在我们的组员就不能同步成功
在这里插入图片描述输入指令git pull
在这里插入图片描述这里看见我们就出现了冲突
那么现在我们编辑冲突,输入vi进入编辑页面
在这里插入图片描述如果我们两个代码都先要,那么就把多余的删除即可
在这里插入图片描述然后再利用三部曲进行提价即可

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值