git commit 命令

git commit 命令

基本语法

bash 复制代码
git commit [选项] -m "提交信息"

常见选项

  1. -m <message> 指定提交信息,用于描述本次提交的内容。
bash 复制代码
git commit -m "修复了登录界面的显示问题"
  1. -a 自动暂存所有被修改过的文件(未包括新建文件),然后进行提交。
bash 复制代码
git commit -a -m "修改了多个文件的样式"
  1. --amend 修改最后一次提交,包括提交信息或新增文件。适用于刚刚提交后发现遗漏内容的情况。
bash 复制代码
# 修改提交信息
git commit --amend -m "新的提交信息"

# 添加漏掉的文件
git add 漏掉的文件
git commit --amend
  1. -v--verbose

显示具体的变更内容,便于确认提交内容。

  1. --no-edit

--amend 配合使用,保留上一次的提交信息,而不打开编辑器修改。

  1. --dry-run

模拟提交过程,不实际执行提交操作,用于检查提交是否会成功。

bash 复制代码
git commit --dry-run -m "测试提交"
  1. --quiet

减少输出内容,安静模式。

  1. --message-file=<file>-F <file>

从指定文件中读取提交信息。

  1. --allow-empty

允许创建一个空提交(无实际更改)。常用于标记版本、测试或文档更新。

bash 复制代码
git commit --allow-empty -m "这是一个空提交"
  1. --signoff-s

在提交信息的末尾添加"签名",通常用于开源项目。

bash 复制代码
git commit -s -m "添加了新功能"

结果类似:

添加了新功能

Signed-off-by: Your Name <your_email@example.com>
  1. --reset-author

重置提交的作者信息为当前用户,适用于接手他人提交的情况。

  1. --date

指定提交的日期。

bash 复制代码
git commit --date="2024-12-31T12:34:56" -m "指定日期提交"

提交步骤

  1. 查看当前状态

    使用 git status 查看有哪些文件需要提交。

    bash 复制代码
    git status
  2. 添加文件到暂存区

    使用 git add 将文件添加到暂存区。

    bash 复制代码
    git add 文件名
    git add .
  3. 提交更改

    使用 git commit 提交暂存区的更改。

    bash 复制代码
    git commit -m "提交描述"
  4. 查看提交历史

    使用 git log 查看提交记录。

    bash 复制代码
    git log

示例

提交特定文件

bash 复制代码
git add index.html
git commit -m "更新了主页的 HTML 内容"

修改上一次提交

bash 复制代码
git commit --amend -m "更新了提交信息"

创建空提交

bash 复制代码
git commit --allow-empty -m "标记为版本 1.0"

签名提交

bash 复制代码
git commit -s -m "修复了错误日志打印问题"

提交时显示变更内容

bash 复制代码
git commit -v -m "优化代码结构"

相关推荐
Andya_net2 小时前
Git | git reset命令详解
大数据·git·elasticsearch
九块六12 小时前
Git:Cherry-Pick 的使用场景及使用流程
git
nt110714 小时前
git小工具---自动向其他分支merge代码
git
程序员沉梦听雨16 小时前
【Git】分支管理
git
凯子坚持 c18 小时前
深度解析如何使用Linux中的git操作
linux·运维·git
norsd21 小时前
git 转移文件夹
git
是店小二呀1 天前
【Linux】Linux开发:GDB调试器与Git版本控制工具指南
linux·git·elasticsearch
com未来1 天前
Jenkins git SSH获取code报错:git@github.com: Permission denied (publickey).
git·ssh·jenkins
程序员白彬1 天前
MacOS15 bash 终端怎么使用网络代理
git