git add 全面用法

打印 上一主题 下一主题

主题 893|帖子 893|积分 2679

概述

git add 是 Git 中的根本命令,用于将文件的更改(新增、修改、删除)添加到 暂存区(Staging Area),准备好进行下一步的提交。它是 Git 工作流中非常重要的一部分。

利用场景


  • 将新增的文件添加到 Git 版本控制。
  • 将修改的文件内容保存到暂存区。
  • 将删除的文件记录到暂存区。
  • 选择性地提交部分代码改动。

根本语法

  1. git add [选项] [文件或目录]
复制代码

常用选项和功能

1. 添加单个文件

将指定文件的更改添加到暂存区:
  1. git add <filename>
复制代码
示例
  1. git add main.c
复制代码
2. 添加多个文件

同时添加多个文件:
  1. git add file1.c file2.c
复制代码
3. 添加全部更改

将当前目次及子目次下的全部更改添加到暂存区:
  1. git add .
复制代码
大概:
  1. git add --all
复制代码
  注意:会包括新增、修改和删除的全部文件。
  4. 添加指定目次

将某个目次下的全部更改添加到暂存区:
  1. git add <directory>
复制代码
示例
  1. git add src/
复制代码
5. 交互式添加

按块(hunk)选择性地将修改添加到暂存区:
  1. git add -p
复制代码
操纵选项


  • y:暂存此块。
  • n:跳过此块。
  • s:拆分块,进一步选择。
  • e:编辑块,手动修改。
  • q:退出。
实用场景:当你想要精确控制哪些代码行被提交时。
6. 更新已跟踪文件

只添加已跟踪文件的更改(不包括新文件):
  1. git add -u
复制代码
7. 添加忽略文件

纵然文件被 .gitignore 忽略,也可以强制添加:
  1. git add -f <filename>
复制代码
8. 部分文件内容添加

手动选择文件中部分内容添加到暂存区:
  1. git add -e <filename>
复制代码
9. 检察将要添加的文件

运行以下命令检察哪些文件会被添加到暂存区:
  1. git add --dry-run
复制代码
10. 更改文件权限

添加文件时可以同时更改其可执行权限:
  1. git add --chmod=(-|+)x <filename>
复制代码
示例
  1. git add --chmod=+x script.sh
复制代码

最佳实践


  • 查抄暂存状态
    添加文件后,利用以下命令检察暂存区的状态:
    1. git status
    复制代码
  • 分块提交
    利用 git add -p
    精确选择要提交的内容,制止不必要的更改被提交。
  • 确保忽略文件未被误添加
    利用 .gitignore 配置忽略文件后,假如必要强制添加,利用 git add -f。
  • 公道组织提交
    一次提交只包罗相干性强的更改,保持提交记录的清楚。

常见错误及办理方法

1. 错误:文件未被跟踪

题目:未利用 git add 添加文件,导致提交失败。
办理
  1. git add <filename>
复制代码
2. 误添加文件

题目:添加了不应提交的文件。
办理
  1. git reset <filename>
复制代码
3. 忽略文件被强制添加

题目:被 .gitignore 忽略的文件被误添加。
办理
查抄 .gitignore,然后移除文件:
  1. git reset <filename>
复制代码

完备工作流程示例


  • 新增或修改文件:
    1. echo "Hello, Git!" > example.txt
    复制代码
  • 检察状态:
    1. git status
    复制代码
  • 添加文件到暂存区:
    1. git add example.txt
    复制代码
  • 提交更改:
    1. git commit -m "Added example.txt with Hello message"
    复制代码

总结

git add 是 Git 工作流的核心部分,它将你的更改放入暂存区,为提交做准备。通过机动的参数和选项,你可以轻松管理不同类型的更改,确保提交记录清楚整洁。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

乌市泽哥

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表