如何管理 Git 添加和撤销暂存

GitGitBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

本全面的 Git 教程将探讨基本的 git add 命令,为开发者提供管理文件暂存和版本控制的重要技术。通过了解如何有效地添加、跟踪和取消暂存文件,程序员可以优化他们的 Git 工作流程,并对项目版本历史保持精确的控制。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL git(("Git")) -.-> git/BasicOperationsGroup(["Basic Operations"]) git(("Git")) -.-> git/DataManagementGroup(["Data Management"]) git/BasicOperationsGroup -.-> git/add("Stage Files") git/BasicOperationsGroup -.-> git/status("Check Status") git/BasicOperationsGroup -.-> git/commit("Create Commit") git/DataManagementGroup -.-> git/reset("Undo Changes") git/DataManagementGroup -.-> git/restore("Revert Files") subgraph Lab Skills git/add -.-> lab-390386{{"如何管理 Git 添加和撤销暂存"}} git/status -.-> lab-390386{{"如何管理 Git 添加和撤销暂存"}} git/commit -.-> lab-390386{{"如何管理 Git 添加和撤销暂存"}} git/reset -.-> lab-390386{{"如何管理 Git 添加和撤销暂存"}} git/restore -.-> lab-390386{{"如何管理 Git 添加和撤销暂存"}} end

Git 添加要点

理解 Git 添加命令

git add 命令是版本控制中的一项基本操作,是准备提交文件的关键步骤。此命令将文件从工作目录移动到暂存区,通知 Git 跟踪更改并为版本历史做好准备。

Git 添加的关键概念

Git add 支持多种文件跟踪策略:

命令 功能 范围
git add <file> 暂存特定文件 单个文件
git add. 暂存所有修改的文件 当前目录
git add -A 暂存所有更改 整个仓库

工作流程可视化

graph LR A[工作目录] -->|git add| B[暂存区] B -->|git commit| C[仓库]

实际代码示例

暂存单个文件

## 暂存特定文件
git add README.md

暂存多个文件

## 暂存多个特定文件
git add file1.txt file2.py script.js

暂存所有更改

## 暂存当前目录中所有修改和新添加的文件
git add.

## 暂存整个仓库的所有更改
git add -A

git add 命令改变了文件跟踪方式,使你能够在 Git 版本控制系统中精确控制版本快照。

精通 Git 添加操作的撤销

在 Git 中取消暂存文件

在 Git 版本控制中,从暂存区移除文件是一项关键技能。有多种方法可用于撤销 git add 操作,这为管理暂存的更改提供了灵活性。

取消暂存方法比较

方法 命令 范围 Git 版本
git reset git reset <file> 特定文件 所有版本
git restore git restore --staged <file> 特定文件 Git 2.23+
git reset git reset 所有暂存文件 所有版本

工作流程可视化

graph LR A[暂存的文件] -->|git reset/restore| B[工作目录]

实际的取消暂存场景

取消单个文件的暂存

## 使用 git reset
git reset README.md

## 使用 git restore(Git 2.23+)
git restore --staged README.md

取消所有暂存文件的暂存

## 取消所有文件的暂存
git reset

## 另一种方法
git restore --staged.

综合取消暂存示例

## 暂存多个文件
git add file1.txt file2.py

## 取消特定文件的暂存
git restore --staged file1.txt

## 取消所有文件的暂存
git restore --staged.

Git 的取消暂存技术可让你精确控制文件暂存,使开发者能够高效地管理版本控制工作流程。

Git 添加操作的最佳实践

策略性文件暂存技术

有效的 Git 添加操作实践可提高版本控制效率,并维护干净、有条理的仓库。理解精确的暂存策略对开发者至关重要。

暂存策略比较

策略 命令 使用场景 精确性
选择性暂存 git add <特定文件> 有针对性的更改
部分目录暂存 git add 目录/ 特定文件夹
全局暂存 git add. 所有更改

工作流程可视化

graph LR A[工作目录] -->|选择性添加| B[暂存区] A -->|部分添加| B A -->|全局添加| B

高级暂存技术

交互式暂存

## 交互式选择要暂存的文件部分
git add -p

试运行暂存

## 预览将要暂存的文件
git add -n.

忽略特定文件

## 创建.gitignore 以排除文件
echo "*.log" > .gitignore
git add.

复杂暂存示例

## 仅暂存已修改的跟踪文件
git add -u

## 暂存新文件,排除被忽略的文件
git add --all --ignore-removal

掌握 Git 添加技术可在复杂的开发环境中实现精确、高效的版本控制管理。

总结

掌握 git add 命令对于高效的版本控制至关重要。本指南涵盖了文件暂存的关键策略,包括单个文件、多个文件以及整个仓库范围的暂存技术。通过学习使用诸如 git addgit resetgit restore 等命令,开发者在管理其 Git 仓库时能够获得更大的灵活性和精确性,最终改善代码管理和协作流程。