`
wade6
  • 浏览: 270401 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

git add 用法

    博客分类:
  • git
阅读更多

http://blog.csdn.net/joe_007/article/details/7889173

一、前言

git add命令主要用于把我们要提交的文件的信息添加到索引库中。当我们使用git commit时,git将依据索引库中的内容来进行文件的提交。

二、基本

git add <path>表示 add to index only files created or modified and not those deleted 

我通常是通过git add <path>的形式把我们<path>添加到索引库中,<path>可以是文件也可以是目录。

git不仅能判断出<path>中,修改(不包括已删除)的文件,还能判断出新添的文件,并把它们的信息添加到索引库中。

三、git add -u

git add -u 表示 add to index only files modified or deleted and not those created 

git add -u [<path>]: 把<path>中所有tracked文件中被修改过或已删除文件的信息添加到索引库。它不会处理untracted的文件。

省略<path>表示.,即当前目录。

四、git add -A

git add -A: [<path>]表示把<path>中所有tracked文件中被修改过或已删除文件和所有untracted的文件信息添加到索引库。

省略<path>表示.,即当前目录。

五、git add -i

我们可以通过git add -i [<path>]命令查看<path>中被所有修改过或已删除文件但没有提交的文件,

并通过其revert子命令可以查看<path>中所有untracted的文件,同时进入一个子命令系统。

比如:

 git add -i

           staged     unstaged path

  1:        +0/-0      nothing branch/t.txt

  2:        +0/-0      nothing branch/t2.txt

  3:    unchanged        +1/-0 readme.txt

 

*** Commands ***

  1: [s]tatus     2: [u]pdate     3: [r]evert     4: [a]dd untracked

  5: [p]atch      6: [d]iff       7: [q]uit       8: [h]elp

What now>

这里的t.txt和t2.txt表示已经被执行了git add,待提交。即已经添加到索引库中。

readme.txt表示已经处于tracked下,它被修改了,但是还没有被执行了git add。即还没添加到索引库中。

5.1、revert子命令

可以通过git add -i的revert子命令(3: [r]evert)把已经添加到索引库中的文件从索引库中剔除。

(3: [r]evert)表示通过3或r或revert加回车执行该命令。执行该命令后,git会例出索引库中的文件列表.

然后通过数字来选择。输入"1"表示git会例出索引库中的文件列表中的第1个文件。

"1-15"表示git会例出索引库中的文件列表中的第1个文件到第15个文件.回车将执行。

如果我们不输入任何东西,直接回车,将结束revert子命令,返回git add -i的主命令行。

5.2、update子命令

可以通过update子命令(2: [u]pdate)把已经tracked的文件添加到索引库中。其操作和revert子命令类似。

5.3、add untracked子命令

通过add untracked子命令(4: [a]dd untracked)可以把还没被git管理的文件添加到索引库中。其操作和revert子命令类似。

5.4、diff子命令

可以通过diff子命令(6: [d]iff)可以比较索引库中文件和原版本的差异。其操作和revert子命令类似。

5.5、status子命令

status子命令(1: [s]tatus)功能上和git add -i相似

5.6、quit子命令

quit子命令(7: [q]uit)用于退出git add -i命令系统

六、帮助

我们可以通过git add -h命令来看git add命令的帮助文档。

 git add -h

usage: git add [options] [--] <filepattern>...

 

    -n, --dry-run         dry run

    -v, --verbose         be verbose

 

    -i, --interactive     interactive picking

    -p, --patch           select hunks interactively

    -e, --edit            edit current diff and apply

    -f, --force           allow adding otherwise ignored files

    -u, --update          update tracked files

    -N, --intent-to-add   record only the fact that the path will be added later

    -A, --all             add changes from all tracked and untracked files

    --refresh             don't add, only refresh the index

    --ignore-errors       just skip files which cannot be added because of errors

    --ignore-missing      check if - even missing - files are ignored in dry run

分享到:
评论

相关推荐

    Git使用方法

    Git使用方法

    Git指令的Shell脚本

    使用方法: 1. 在Linux系统中,将本文件放在Git库目录下,利用Shell运行本文件; 2.在windows系统中,需下载安装与操作系统相对应的Git软件,并将本文件放在Git库目录下,双击即可运行。 运行示例: Please choose...

    Git开发操作文档 全面介绍Git技术

    这份Git开发操作文档是一份全面介绍Git技术的文档,内容包括了Git的基本概念、使用方法和常见问题解决方案,以及Git在版本控制和协同开发中的应用。 该文档首先介绍了Git的基本概念和原理,包括Git的工作流程、版本...

    Git远程仓库使用方法

    介绍 远程仓库在协同开发中起着关键的作用,它提供了一个中央存储库,使多个开发者能够协同工作、共享代码、协同工作、分支管理、解决冲突和跟踪项目的进展。...git remote add origin 远程仓库URL 4、提交代码

    Git权威指南PDF完整版

    10.6 使用 git add -i 选择性添加/ 122 10.7 Hello World 引发的新问题/ 124 10.8 文件忽略/ 125 10.9 文件归档/ 129 第11章 历史穿梭/ 130 11.1 图形工具:gitk/ 130 11.2 图形工具:gitg/ 131 11.3 图形工具:qgit...

    git常用命令总结.pdf

    以下是 Git 常用命令总结,使用表格形式展示。 命令 描述 git init 初始化仓库 git add [file] 添加文件到暂存区 git commit -m "[message]" 提交代码到本地仓库 git status 查看工作区和暂存区状态 git diff 查看...

    git开源工具,可以下载github代码

    git 下载工具可以下载源码,使用git add, git clone, 可以下载,提交相关的代码,大家可以查找相关的用法,然后再使用git 去进行相关操作

    100个Git常用命令及用法-IT老卢.pdf

    3.git remote add &lt;name&gt; &lt;url&gt;:给当前 Git 项目添加一个远程仓库 4.git pull:拉取远程仓库的最新代码 5.git push &lt;remote&gt; &lt;branch&gt;:将本地分支推送到远程仓库 分支管理 6.git branch:列出所有本地分支 7.git ...

    git-cp:git 的一个方便的唯一子命令,它执行 cp(1) 和 git-add(1)

    git-cp概要git-cp - 一个方便的 git 子命令,它执行 cp(1) 和 git-add(1) git-touch - git-add 新的空文件,自动创建目录git-untouch - 撤消 git-touch用法 git cp [options] &lt;source&gt;... &lt;destination&gt; -v, --...

    Git 核心用法和概念详解-讲义.pdf

    详细讲解git中相关概念和核型用法,比如pull、push、head、merge等

    Git文件缓存分离组件Gitsym.zip

    ln -sf `pwd`/git-sym ~/bin/git-sym或者,您也可以直接运行:python git-sym -h基本用法:repo用户git-sym show git-sym updaterepo所有者git-sym link --add my_big_file.gif git commit -m 'git-sym...

    nodegit-kit:返回本机Promises的补充NodeGit助手,可帮助git命令,例如init,add,commit,status,diff

    NodeGit套件 git命令的承诺,例如git init , git status , git add * , git diff , git log和git commit -am"commit message" 。 欢迎在上评论安装npm i --save nodegit-kit用法var git = require ( 'nodegit-...

    git-utils:一些git的命令行实用程序

    一些实用程序 Git扩展 两个git扩展,应该可以更轻松地添加要提交的... 此方法允许您按索引(从git istatus )添加在该索引处关联的文件以进行提交。 与git add &lt;file&gt; 。 用法 git iadd 例子 &gt; git istatus Modi

    git-user:Bash脚本,用于轻松切换Git用户

    用法git user add john.doe@acme.org " John DOE "git user add jdoe@private.local " John Doe "# inside the Git repositorygit user set john.doe@acme.org# sets user.name to John DOE# and user.email to john...

    Git使用小坑 Out of memory错误的解决方法

    最近公司将内部使用的代码由svn迁到了git上,所以也必须学者使用Git命令。 虽说git的模式和svn区别很大,但想必也不是什么难事。但没曾想在第一步git clone的时候就踩到了一个大坑……废话不多提,先看错误代码: ...

    Basics-of-Git:学习git的基础

    您可以使用git add。 添加目录中存在的所有文件。 git add'.txt',将添加所有文本文件到临时位置。 git status-显示仓库的状态。 (文件尚未提交,等等) git commit-还记得我们添加的文件吗? 他们在演出区。 要...

    gulp-ftp-git:git上的ftp上传使用gulp推送到远程服务器

    (以自己的方式进行) $ git init$ git remote add origin $ git add .$ git commit -m "first commit"$ git push origin master在gulpfile.js为您的推送任务创建一个任务。 或者克隆/下载到您的项目目录中。 进行...

    VBA版本控制:使用Git的VBA版本控制

    这样就可以使用Git对VBA进行版本控制 :party_popper: ! 这是必需的,因为Git无法直接读取Excel文件,但可以读取导出的源文件。 额外的好处是,有一个Bash函数可以在立即窗口中直接运行命令。 示例`Project.bash...

    git-go:...对于不喜欢浪费时间输入git命令的人

    git add -A git add -u git commit -m "SOME MESSAGE" git pull git push 这是一种危险的做法,但可以节省大量时间。 同时,它也鼓励。 用法 实际上只是git-go COMMITMSG 。 请注意,您不必在提交消息两边加上引号。...

    git-tutorial:从命令行熟悉git

    以下文档包含有关git用法的注释。 搭建环境 不要忘记... git config --global user.name "User" git config --global user.email "email@email.com" 丑陋的hack在友好的环境中禁用SSL验证: git config --global ...

Global site tag (gtag.js) - Google Analytics