本章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)