
- Git 入门
- Git - 首页
- Git - 版本控制
- Git - 基本概念
- Git - 命令行
- Git - 安装
- Git - 首次设置
- Git - 基本命令
- Git - 获取帮助
- Git - 工具
- Git - 速查表
- Git - 术语
- Git 分支
- Git - 简述分支
- Git - 创建新分支
- Git - 切换分支
- Git - 分支和合并
- Git - 合并冲突
- Git - 管理分支
- Git - 分支工作流程
- Git - 远程分支
- Git - 追踪分支
- Git - 变基
- Git - 变基 vs. 合并
- Git - 合并提交
- Git 操作
- Git - 克隆操作
- Git - 打标签操作
- Git - 别名操作
- Git - 提交操作
- Git - 暂存操作
- Git - 移动操作
- Git - 重命名操作
- Git - 推送操作
- Git - 拉取操作
- Git - Fork 操作
- Git - Patch 操作
- Git - Diff 操作
- Git - 状态操作
- Git - 日志操作
- Git - HEAD 操作
- Git - origin master
- Git 撤销
- Git - 撤销更改
- Git - checkout
- Git - revert
- Git - reset
- Git - 恢复操作
- Git - rm
- Git - switch 操作
- Git - cherry-pick
- Git - amend
- 服务器上的 Git
- Git - 本地协议
- Git - 智能 HTTP 协议
- Git - 简单 HTTP 协议
- Git - SSH 协议
- Git - Git 协议
- Git - 在服务器上获取 Git
- Git - 设置服务器
- Git - 守护进程
- Git - GitWeb
- Git - GitLab
- Git - 第三方托管选项
- 分布式 Git
- Git - 分布式工作流程
- Git - 为项目做贡献
- Git - 维护项目
- 自定义 Git
- Git - 配置
- Git - 钩子
- Git - 属性
- Git - init
- Git - commit
Git 提交
git commit 命令是 Git 中最基本和最常用的功能之一,它是版本控制的基石。它允许开发者记录对项目代码库所做的更改的快照,创建可以重新访问、分支或回滚的提交历史记录。每个提交都作为一个检查点,使用户能够了解进行了哪些更改、为什么进行更改以及谁进行了更改。
进行提交时,Git 会生成一个新的对象,表示此时仓库的状态,允许您回滚到此状态或稍后分析它。
Git 中的每个提交都有
一个唯一的标识符(哈希值),根据更改和提交元数据生成。
作者信息,指示谁进行了提交。
一个提交信息,描述所做的更改。
父提交引用,将其链接到项目历史记录中的先前提交,形成一个链。
git commit 的基本用法
在 Git 中提交更改的最简单形式包括暂存您要包含在提交中的文件,然后运行git commit 命令。
为提交暂存文件
在进行提交之前,需要使用 git add 命令将更改添加到暂存区
git add <file>
暂存所有更改
git add .
创建提交
一旦更改被暂存,使用git commit创建新的提交
git commit -m "Your commit message here"
-m 标志指定提交信息。此信息应具有意义且简洁,描述更改的内容。
git commit 的常用选项
git commit 命令提供各种选项来修改其行为。以下是一些最常用的选项
-m (信息) 选项
-m 标志用于直接从命令行指定提交信息。这是向提交添加信息的最常用方法
git commit -m "Fix bug in login functionality"
-a (所有) 选项
-a 选项自动暂存所有已修改的已跟踪文件,跳过git add步骤
git commit -a -m "Update README and add new features"
请注意,这仅暂存已修改和已删除的文件。新文件必须仍然使用git add添加才能提交。
--amend 选项
--amend 选项允许您修改上次提交。如果您需要更新提交信息或添加先前提交中遗漏的其他更改,这将非常有用
git commit --amend -m "Update login validation for edge cases"
--no-edit 选项
与--amend一起使用时,--no-edit 选项允许您修改上次提交而不更改提交信息
git commit --amend --no-edit
--author 选项
--author 选项用于为提交指定不同的作者
git commit --author="Manisha Patil " -m "Add new feature"
--allow-empty 选项
此选项允许您即使没有暂存更改也能创建提交。它可以用来在不修改代码的情况下向提交历史添加信息或标签
git commit --allow-empty -m "Start a new feature development cycle"
Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.
Git Commit 的底层工作原理
创建提交时,Git 会执行以下步骤
创建暂存区的快照:暂存的更改被存储为一个新的树对象。
生成提交对象:提交对象包含指向新树对象的指针、元数据(作者、时间戳)和父提交。
更新分支指针:您所在的当前分支将更新为指向新的提交。如果您处于分离的 HEAD 状态,则 HEAD 指针将直接更新。
生成的提交由SHA-1 哈希值标识,这是一个基于提交内容的唯一标识符,方便跟踪或引用历史记录中的特定提交。