Java学习笔记-全栈-web开发-18-Git


本章Git教学将基于码云,因为在国内,由于网速的原因,GitHub作为代码开源站点更为合适,进行项目管理的话速度太慢了。
学会码云的使用,GitHub也可触类旁通。

1. 入门

1.1 概述

Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。

Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

国内git服务器地址:码云
国外git服务器地址:GitHub

1.2 原理图(重点)

在这里插入图片描述

  1. 将项目从工作区add到本地仓库
  2. 然后commit到master
  3. 最后将项目push到git服务器上的远程仓库

git的安装可以参照百度经验,或者自行查阅,在此不做赘述。

安装完之后记得将git下的bin目录加到path路径,以可在终端通过git version查看版本为安装成功标准。

2. Git实战

使用IDEA自带git进行学习

2.1 常用场景

  1. 代码需要备份时
  2. 每个大版本都需要备份来支持(如1.0出现问题时,不能在2.0版本上修复)
  3. 早上从服务器下载最新代码到本地
  4. 晚上提交自己的代码到服务器
  5. 团队开发解决文件冲突问题

2.2 简单使用

安装git之后在IDEA中配置git
在这里插入图片描述在码云上创建一个Java仓库
在这里插入图片描述
复制git路径
在这里插入图片描述
创建项目,并创建git仓库
在这里插入图片描述然后可以看到项目文件变红

接着将项目add到本地仓库
在这里插入图片描述
commit到服务器
在这里插入图片描述在这里插入图片描述此时会失败,因为项目目录与git服务器目录不一致,
然后打开终端,输入
git push -f 你的git项目地址
强制推送即可。

之后,使用IDEA中VSS下的git操作即可,操作步骤参照原理图。
(比如,更改代码之后,进行add操作,然后commit操作,然后push进行同步)

2.3 版本管理(重要)

通过创建分支,实现版本管理。

2.3.1 创建分支

创建分支,用于记录版本。比如此时的分支为1.0版本
在这里插入图片描述
在这里插入图片描述

2.3.2 主干继续开发

此处checkout可以理解为切换
在这里插入图片描述在主干上添加新功能
在这里插入图片描述commit后并push到git服务器。
在这里插入图片描述

假设此时,1.0版本出现了bug,因此切换回1.0版本进行bug修复

2.3.4 1.0版本修复BUG

切换回1.0分支
在这里插入图片描述可以看到,1.0中并没有新功能
在这里插入图片描述
进行BUG修复
在这里插入图片描述然后把1.0的代码也commit并push到服务器。
在这里插入图片描述可以看到,主干上有新功能,1.0上修复了bug,但bug是在1.0分支上修复的,主干上依旧存在bug,因此,此时需要将1.0合并到主干上,以此修复主干BUG。

2.3.5 合并分支

记得先切换回主干,因为是主干合并其他分支

在这里插入图片描述

在这里插入图片描述
合并后,将主干master推送到服务器。

在这里插入图片描述
此时可以继续创建2.0分支,然后master作为未来的3.0继续开发。

2.4 查看历史变化

2.4.1 查看版本变化

先鼠标单击选中你想查看的对象(此处选择项目根路径)
然后操作如下:
在这里插入图片描述可以看到项目变化

在这里插入图片描述

2.4.2 对比版本差异

在这里插入图片描述
然后会弹出相应的版本号,我这里随便选了一个,查看结果如下:

在这里插入图片描述
绿色的部分就是改变的地方

2.5 版本回退

如果误删了某个文件,然后又提交到了服务器,可以通过版本回退。

此处以1.0BUG修复文件为例,删除该文件。
在这里插入图片描述
commit并push
在这里插入图片描述
码云上查看变化
在这里插入图片描述
选择回退到上一个版本。
在这里插入图片描述
四种选项后面都有提示,我们选择Keep模式。
在这里插入图片描述回退成功
在这里插入图片描述然后打开终端,输入命令
git push -f
即可(误删记录不会出现)

注:网上提供的checkout并不能直接进行“撤销”操作,实质上是将git的HEAD指针移动到了指定的checkout分支,此时误删操作依旧存在。

3. 从git服务器下载项目

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
然后等待即可下载成功。

4. 快速将已有项目上传到git

1.创建git仓库,并将仓库下载到本地git clone https://gitee.com/xxx/xxxx.git
2.把项目内容放在下载的git项目目录下
3.打开git命令行,
4.git add .
5.git commit -m ‘初始化项目’
6.git push origin master

之后对项目进行改变之后,直接commit并push即可(通常IDEA自动add,如果没有,则先add)

5. 在已有项目上创建空分支

1.创建一个空白的分支的需求

在Git中创建分支,是必须有一个父节点的,也就是说必须在已有的分支上来创建新的分支,如果工程已经进行了一段时间,这个时候是无法创建空分支的。但是有时候就是需要创建一个空白的分支。

2.解决方法:

2.1 使用 git checkout的–orphan参数:

git checkout --orphan emptybranch

该命令会生成一个叫emptybranch的分支,该分支会包含父分支的所有文件。但新的分支不会指向任何以前的提交,就是它没有历史,如果你提交当前内容,那么这次提交就是这个分支的首次提交。
2.2 删除所有文件:

想要空分支,所以需要把当前内容全部删除,用git命令

git rm -rf . //注意:最后的‘.’不能少。

2.3 提交分支:

如果没有任何文件提交的话,分支是看不到的,所以我们需要创建一个新文件,然后提交则新创建的branch就会显示出来。

echo '# new branch' >> README.md

git add README.md

git commit -m 'new branch'

2.4 最后push到远程仓库,则新的空分支就创建成功了。

git push origin emptybranch

6. 强行拉取远程代码覆盖本地更新

git fetch --all
拉取所有
git reset --hard origin
重设指针到最新
git pull

慎用,本地代码如果没有备份,会将本地的代码全部删除,而且找不回来。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值