Git

简介

Git:管理软件开发项目中的源代码文件

常用功能

仓库管理

文件管理

分支管理

标签管理

远程操作

进阶功能:

使用开发工具来集成Git软件和访问GitHub,Gitee这样的第三方代码托管平台。

功能指令:

Add、commit、log、branch、tag、remote、status

版本

软件版本

JDK: 1.8, 17,20

MYSQL: 5.7, 8.0

IDEA: 2022, 2023

文件版本

保存重要的历史记录

恢复数据

版本控制软件的基础功能

1、保存和管理文件

2、提供客户端工具进行访问(不让直接操作版本,不然容易出现误操作)

3、提供不同版本文件的比对功能

集中式版本控制

基本上就是从中央服务器下载下来文件,在本地进行操作,最后再上传回中央服务器。多人协作开发,都可以在中央服务器下载和上传文件。

缺点1:会出现文件冲突问题,也就是说,好多个人修改了一份文件,导致后来修改的文件把原来的文件覆盖掉,造成其他伙伴上传文件丢失。

缺点2:如果中央服务器出现故障就无法工作了。

分布式版本控制

中央服务器存在,在本地还有一个服务器,和中央服务器的数据是一模一样的,为了解决中央服务器故障无法工作的问题。

Git是团队协作写代码的软件。但是是外网,会面临上传速度比较慢之类的问题。

git命令

git cat-file -p 版本号 用来查看每个版本的信息

Init之后分为三种 提交信息、文件状态、文件内容

image-20240617225709571

Git bash here

Git -v 查看当前git版本号

Git init 初始化仓库

Git clone https://...... 克隆远程仓库 和远程仓库完全一样,包括名字

Git clone https://...... 新名字 克隆远程仓库 但是给仓库修改一个新的名字

进入仓库之后,可以对仓库进行配置

Git config user.name xue

Git config user.email 19457823058@qq.com

也可以对所有的仓库进行全局配置

Git config --global user.name xue

Git 官方文档

www.git-scm.com/open in new window

查看git管理的仓库的状态

Git status

把新增的a文件放到暂存区进行比对

Git add a.txt

Git status

把a文件再放回到工作区

Git rm --cached a.txt

提交之后新增一条消息,叫做新增文件

Git commit -m 新增文件

查看历史纪录,且一行展示

Git log --online

误删除之后恢复

未提交

Git restore a.txt

已经提交后恢复到某个版本,缺点是会丢失当前版本之后的提交

Git reset --hard 078f1a7

恢复到某个版本之前,且不丢失提交的log信息

Git revert 078f1a7

分支操作,分支指令必须是提交之后才能有

Git branch user(分支名)

查看当前所有分支

Git branch -v

*对应的是当前的分支

切换当前分支

Git checkout user

创建分支的同时切换分支

Git checkout -b order

删除分支

Git branch -d user

合并分支, 把order分支合并到master分支当中,需要先处于master分支中

Git merge order

手动解决冲突

最后提交文件

给某个版本号增加标签

Git tag update(标签名) 版本号

查看当前所有的标签

Git tag

查看标签对应的版本信息

Git log update

删除标签

Git tag -d update

新增一个远程仓库

Git remote add origin https....../git

删除

Git remote remove origin ...

修改

Git remote rename origin ...

把本地的内容推送到远程仓库,实现信息一致

Git push origin

Ssh提交是需要****安全认证****的,在本地会生成一个文件,把那个文件需要在远程仓库配置一下

Ssh-keygen -t rsa -C .git(ssh的链接)

如果远程仓库修改,把远程仓库的信息拉取到本地

Git pull orign

GitLab可以搭建一个自己的代码托管平台