四、Git——工作区、暂存区、本地库基本操作命令

本文介绍了Git工作区、暂存区和本地库的基本操作命令。包括本地库初始化、签名设置(含项目级别和系统级别)及优先级、状态查看、添加文件到暂存区、提交暂存区内容到本地库,还有回撤暂存区文件到工作区等操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、 工作区、暂存区、本地库基本操作命令
1本地库初始化
右键打开 git bash命令窗口
mkdir springboot 新建本地文件目录
cd /springboot
git init 初始化文件目录

效果

在这里插入图片描述
.git 目录中存放的是本地库相关的子目录和文件,不要删除,也不要胡
乱修改

2 签名

1)形式
用户名:tom Email 地址:goodMorning@atguigu.com

2)签名作用:区分不同开发人员的身份 (email地址不存在也可以,只是做区分用)
注 这里设置的签名和登录远程库(代码托管中心)的账号、密码无关

3)设置签名的命令
a) 项目级别签名(仓库级别):仅在当前本地库范围有效
git config user.name tang_pro
git config user.email tang123@126.com
用户签名信息保存在.git文件夹下的config文件中在这里插入图片描述
b) 系统级别签名:登录当前操作系统的用户范围
git config --global user.name tang_pro
git config --global user.email tang123@126.com
系统签名保存在用户家目录下的.gitconfig文件中
vi ~/.gitconfig
在这里插入图片描述
4)签名级别优先级
就近原则:项目级别签名优先于系统用户级别签名,二者都有时采用项目级别
的签名
如果只有系统用户级别的签名,就以系统用户级别的签名为准
二者都没有不允许

3 状态查看
git status
查看当前分支,工作区、暂存区状态

在这里插入图片描述
4 添加
git add [file name]
将工作区的“新建/修改”添加到暂存区

5 提交
git commit -m “commit message” [file name]
commit message为提交的注释
将暂存区的内容提交到本地库

6 回撤暂存区的文件到工作区
git rm --cached [file name]

### Git 清除暂存区的方法 在 Git 中,清除暂存区的操作可以通过多种方法实现。这些方法不会影响工作区的文件内容,仅会将已暂存的内容撤回到未暂存状态。 #### 方法一:`git reset` 通过 `git reset` 命令可以取消暂存区中的更改并将它们移回工作目录。此命令适用于单个文件或多组文件的情况: ```bash git reset HEAD <file> ``` 上述命令的作用是从暂存区中移除 `<file>` 文件,但保留其在工作区中的修改[^1]。如果需要一次性处理多个文件或整个项目目录,则可以直接运行以下命令: ```bash git reset HEAD . ``` 这条语句将会把当前目录下所有的文件从暂存区还原至未暂存状态[^5]。 #### 方法二:`git restore --staged` 对于较新的 Git 版本 (>=2.23),推荐使用更直观的 `git restore` 命令来完成相同功能: ```bash git restore --staged <file> ``` 该指令专门用于将特定文件从暂存区移走而不改变任何实际文件内容[^2]。同样支持批量操作: ```bash git restore --staged . ``` 这一步骤能够快速清空整个暂存区内的所有变更记录。 #### 方法三:`git rm --cached` 当目标是彻底删除某个文件于版本控制系统里的追踪列表时,可采用如下方式: ```bash git rm --cached <file> ``` 这里需要注意的是,虽然执行完之后该文件不再处于索引之中,但它依然存在于本地磁盘上;换句话说就是仅仅停止跟踪而已,并非物理意义上的销毁动作[^4]。 #### 方法:`git stash` 假如希望保存现有的改动以便稍后再取用而不是简单地废弃掉他们,“储藏”机制便派上了用场: ```bash git stash ``` 这一过程不仅涵盖了尚未加入缓存队列的部分同时也涉及到了那些已经准备好的条目们——也就是说无论是新增还是修订都会被打包存储起来供后续提取利用[^3]。 综上所述,针对不同需求场景提供了几种有效的解决方案让用户灵活应对各种状况下的撤销行为。 ```python # 示例 Python 脚本展示如何自动化清理暂存区(假设环境变量 GIT_DIR 已设置) import os os.system('git reset HEAD .') print("Staging area has been cleared.") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值