Java 第11天 (git版本控制器基础用法)

Linux下使用到的命令:

ls -al //查看当前目录下的文件及文件夹

mkdir //新建目录

rm -rf //递归强制删除文件夹

版本控制

一、安装配置

1、下载地址

https://git-scm.com/

2、初始配置

#用户名

git config --global user.name "自定义用户名"

#邮箱(公司的联系方式--追责)

git config --global user.email "邮箱地址"

说明:

  • 安装好git后,第一步就需要初始化个人信息。

  • 设置好后查询,检查是否配置成功,不加用户名或邮箱就代表查询

二、初始化本地仓库

1、版本库

用于跟踪项目代码的仓库(目录),每个本地仓库中会创建一个隐藏文件夹

.git 同级目录下做的所有操作都会被git监管。

2、初始化本地仓库

在普通文件夹下执行如下命令,可以将该文件夹初始化为本地仓库:

git init

3、本地仓库的构成

  • 工作区:存放代码的位置

  • 版本库:工作区中.git文件夹,其中包含暂存区 和 分支区

  • 暂存区:通过git add/rm命令执行后,操作保存的位置(类似于缓存区)

  • 分支区:是最终版本信息保存的位置,git commit 命令提交的信息都会存储在

分支区,通常版本库初始化后会默认创建一个本地分支(master)

也叫主分支。master最好不要删除。

工作区代码发生修改--git add(添加)-->暂存区--git commit(提交)-->分支区

三、版本管理

1、提交新文件

1-在工作区创建新文件

2-查看本地仓库的状态

git status

3-添加新建文件的状态到暂存区

git add 文件名

4-将暂存区的状态提交到本地分支区

git commit -m "备注信息"

2、修改文件

与提交新文件的流程步骤相同

3、查看历史版本

#查看提交的详细日志信息

git log

#查看基本日志信息

git log --pretty=oneline

#查看详细的操作日志

git reflog

4、版本回滚

git reset --hard HEAD^

---或者---

git reset --hard commitID

说明:

  • HEAD 头指针指向当前最新的代码(当前所在版本)

  • ^ 版本回滚到最近一次提交(回跳一个版本)

  • commitID: 执行commit时随机生成的id号,id号取前>=7位即可

5、代码撤销

#只撤销工作区的修改

git checkout -- <file>...

#撤销暂存区的状态

第一步:从暂存撤销回工作区

git reset HEAD <file>...

第二步:撤销工作区

git checkout -- <file>...

#已经提交到本地分支的只需要用版本回滚

6、删除文件

情况一:通过物理删除,利用git记录操作

  • rm -f 文件

  • git add/rm 文件...

  • git commit -m "备注"

情况二:利用git的rm命令执行删除

  • git rm 文件 #删除文件并添加暂存

  • git commit -m "备注"

相关推荐
2601_962106641 小时前
【Java Set综合实战】商品管理系统 + 图书收藏系统|Product、Book自定义类全套代码
java
RuoyiOffice2 小时前
SpringBoot+Vue3 凭证生命周期设计:审核、过账、冲销与反过账怎样保持账目一致
java·spring boot·事务·springboot3·财务系统·会计凭证·ruoyi office
2601_962106642 小时前
HashMap入门|工号-姓名键值存储、两种遍历方式、根据key/value查
java
czq_26867194872 小时前
Python打卡第46天
开发语言·python
杨凯凡3 小时前
Spring Framework 7 API 版本管理实战:请求头路由、兼容迁移与废弃策略
java·rest api·springframework·spring boot 4·api版本管理
T_Wizard3 小时前
同一个问题写了 4 遍:官方 SDK / HTTP / Spring AI / LangChain4j,到底该选哪个
java·ai编程
hai_android3 小时前
AudioTrack 深度解析:从原理到实战
android·java·kotlin
斯维赤4 小时前
限流、熔断、降级,你真的分得清吗?
java·后端·架构
2301_767113985 小时前
点过“不再询问”就要检查:Claude Code权限文件也可能存着密钥
git·信息安全·claude code
Evand J5 小时前
【MATLAB例程介绍】(17)永磁同步电机(PMSM)基于自适应无迹卡尔曼滤波(AUKF)的电流噪声在线估计。测量噪声协方差自适应与转速估计对比仿真
开发语言·matlab·卡尔曼滤波·无迹卡尔曼滤波·pmsm·电机滤波