about summary refs log tree commit diff
path: root/third_party/git/Documentation/git-add.txt
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/git/Documentation/git-add.txt')
-rw-r--r--third_party/git/Documentation/git-add.txt424
1 files changed, 0 insertions, 424 deletions
diff --git a/third_party/git/Documentation/git-add.txt b/third_party/git/Documentation/git-add.txt
deleted file mode 100644
index 8b0e4c7fa8..0000000000
--- a/third_party/git/Documentation/git-add.txt
+++ /dev/null
@@ -1,424 +0,0 @@
-git-add(1)
-==========
-
-NAME
-----
-git-add - Add file contents to the index
-
-SYNOPSIS
---------
-[verse]
-'git add' [--verbose | -v] [--dry-run | -n] [--force | -f] [--interactive | -i] [--patch | -p]
-	  [--edit | -e] [--[no-]all | --[no-]ignore-removal | [--update | -u]]
-	  [--intent-to-add | -N] [--refresh] [--ignore-errors] [--ignore-missing] [--renormalize]
-	  [--chmod=(+|-)x] [--] [<pathspec>...]
-
-DESCRIPTION
------------
-This command updates the index using the current content found in
-the working tree, to prepare the content staged for the next commit.
-It typically adds the current content of existing paths as a whole,
-but with some options it can also be used to add content with
-only part of the changes made to the working tree files applied, or
-remove paths that do not exist in the working tree anymore.
-
-The "index" holds a snapshot of the content of the working tree, and it
-is this snapshot that is taken as the contents of the next commit.  Thus
-after making any changes to the working tree, and before running
-the commit command, you must use the `add` command to add any new or
-modified files to the index.
-
-This command can be performed multiple times before a commit.  It only
-adds the content of the specified file(s) at the time the add command is
-run; if you want subsequent changes included in the next commit, then
-you must run `git add` again to add the new content to the index.
-
-The `git status` command can be used to obtain a summary of which
-files have changes that are staged for the next commit.
-
-The `git add` command will not add ignored files by default.  If any
-ignored files were explicitly specified on the command line, `git add`
-will fail with a list of ignored files.  Ignored files reached by
-directory recursion or filename globbing performed by Git (quote your
-globs before the shell) will be silently ignored.  The 'git add' command can
-be used to add ignored files with the `-f` (force) option.
-
-Please see linkgit:git-commit[1] for alternative ways to add content to a
-commit.
-
-
-OPTIONS
--------
-<pathspec>...::
-	Files to add content from.  Fileglobs (e.g. `*.c`) can
-	be given to add all matching files.  Also a
-	leading directory name (e.g. `dir` to add `dir/file1`
-	and `dir/file2`) can be given to update the index to
-	match the current state of the directory as a whole (e.g.
-	specifying `dir` will record not just a file `dir/file1`
-	modified in the working tree, a file `dir/file2` added to
-	the working tree, but also a file `dir/file3` removed from
-	the working tree). Note that older versions of Git used
-	to ignore removed files; use `--no-all` option if you want
-	to add modified or new files but ignore removed ones.
-+
-For more details about the <pathspec> syntax, see the 'pathspec' entry
-in linkgit:gitglossary[7].
-
--n::
---dry-run::
-	Don't actually add the file(s), just show if they exist and/or will
-	be ignored.
-
--v::
---verbose::
-        Be verbose.
-
--f::
---force::
-	Allow adding otherwise ignored files.
-
--i::
---interactive::
-	Add modified contents in the working tree interactively to
-	the index. Optional path arguments may be supplied to limit
-	operation to a subset of the working tree. See ``Interactive
-	mode'' for details.
-
--p::
---patch::
-	Interactively choose hunks of patch between the index and the
-	work tree and add them to the index. This gives the user a chance
-	to review the difference before adding modified contents to the
-	index.
-+
-This effectively runs `add --interactive`, but bypasses the
-initial command menu and directly jumps to the `patch` subcommand.
-See ``Interactive mode'' for details.
-
--e::
---edit::
-	Open the diff vs. the index in an editor and let the user
-	edit it.  After the editor was closed, adjust the hunk headers
-	and apply the patch to the index.
-+
-The intent of this option is to pick and choose lines of the patch to
-apply, or even to modify the contents of lines to be staged. This can be
-quicker and more flexible than using the interactive hunk selector.
-However, it is easy to confuse oneself and create a patch that does not
-apply to the index. See EDITING PATCHES below.
-
--u::
---update::
-	Update the index just where it already has an entry matching
-	<pathspec>.  This removes as well as modifies index entries to
-	match the working tree, but adds no new files.
-+
-If no <pathspec> is given when `-u` option is used, all
-tracked files in the entire working tree are updated (old versions
-of Git used to limit the update to the current directory and its
-subdirectories).
-
--A::
---all::
---no-ignore-removal::
-	Update the index not only where the working tree has a file
-	matching <pathspec> but also where the index already has an
-	entry. This adds, modifies, and removes index entries to
-	match the working tree.
-+
-If no <pathspec> is given when `-A` option is used, all
-files in the entire working tree are updated (old versions
-of Git used to limit the update to the current directory and its
-subdirectories).
-
---no-all::
---ignore-removal::
-	Update the index by adding new files that are unknown to the
-	index and files modified in the working tree, but ignore
-	files that have been removed from the working tree.  This
-	option is a no-op when no <pathspec> is used.
-+
-This option is primarily to help users who are used to older
-versions of Git, whose "git add <pathspec>..." was a synonym
-for "git add --no-all <pathspec>...", i.e. ignored removed files.
-
--N::
---intent-to-add::
-	Record only the fact that the path will be added later. An entry
-	for the path is placed in the index with no content. This is
-	useful for, among other things, showing the unstaged content of
-	such files with `git diff` and committing them with `git commit
-	-a`.
-
---refresh::
-	Don't add the file(s), but only refresh their stat()
-	information in the index.
-
---ignore-errors::
-	If some files could not be added because of errors indexing
-	them, do not abort the operation, but continue adding the
-	others. The command shall still exit with non-zero status.
-	The configuration variable `add.ignoreErrors` can be set to
-	true to make this the default behaviour.
-
---ignore-missing::
-	This option can only be used together with --dry-run. By using
-	this option the user can check if any of the given files would
-	be ignored, no matter if they are already present in the work
-	tree or not.
-
---no-warn-embedded-repo::
-	By default, `git add` will warn when adding an embedded
-	repository to the index without using `git submodule add` to
-	create an entry in `.gitmodules`. This option will suppress the
-	warning (e.g., if you are manually performing operations on
-	submodules).
-
---renormalize::
-	Apply the "clean" process freshly to all tracked files to
-	forcibly add them again to the index.  This is useful after
-	changing `core.autocrlf` configuration or the `text` attribute
-	in order to correct files added with wrong CRLF/LF line endings.
-	This option implies `-u`.
-
---chmod=(+|-)x::
-	Override the executable bit of the added files.  The executable
-	bit is only changed in the index, the files on disk are left
-	unchanged.
-
-\--::
-	This option can be used to separate command-line options from
-	the list of files, (useful when filenames might be mistaken
-	for command-line options).
-
-
-EXAMPLES
---------
-
-* Adds content from all `*.txt` files under `Documentation` directory
-  and its subdirectories:
-+
-------------
-$ git add Documentation/\*.txt
-------------
-+
-Note that the asterisk `*` is quoted from the shell in this
-example; this lets the command include the files from
-subdirectories of `Documentation/` directory.
-
-* Considers adding content from all git-*.sh scripts:
-+
-------------
-$ git add git-*.sh
-------------
-+
-Because this example lets the shell expand the asterisk (i.e. you are
-listing the files explicitly), it does not consider
-`subdir/git-foo.sh`.
-
-INTERACTIVE MODE
-----------------
-When the command enters the interactive mode, it shows the
-output of the 'status' subcommand, and then goes into its
-interactive command loop.
-
-The command loop shows the list of subcommands available, and
-gives a prompt "What now> ".  In general, when the prompt ends
-with a single '>', you can pick only one of the choices given
-and type return, like this:
-
-------------
-    *** Commands ***
-      1: status       2: update       3: revert       4: add untracked
-      5: patch        6: diff         7: quit         8: help
-    What now> 1
-------------
-
-You also could say `s` or `sta` or `status` above as long as the
-choice is unique.
-
-The main command loop has 6 subcommands (plus help and quit).
-
-status::
-
-   This shows the change between HEAD and index (i.e. what will be
-   committed if you say `git commit`), and between index and
-   working tree files (i.e. what you could stage further before
-   `git commit` using `git add`) for each path.  A sample output
-   looks like this:
-+
-------------
-              staged     unstaged path
-     1:       binary      nothing foo.png
-     2:     +403/-35        +1/-1 git-add--interactive.perl
-------------
-+
-It shows that foo.png has differences from HEAD (but that is
-binary so line count cannot be shown) and there is no
-difference between indexed copy and the working tree
-version (if the working tree version were also different,
-'binary' would have been shown in place of 'nothing').  The
-other file, git-add{litdd}interactive.perl, has 403 lines added
-and 35 lines deleted if you commit what is in the index, but
-working tree file has further modifications (one addition and
-one deletion).
-
-update::
-
-   This shows the status information and issues an "Update>>"
-   prompt.  When the prompt ends with double '>>', you can
-   make more than one selection, concatenated with whitespace or
-   comma.  Also you can say ranges.  E.g. "2-5 7,9" to choose
-   2,3,4,5,7,9 from the list.  If the second number in a range is
-   omitted, all remaining patches are taken.  E.g. "7-" to choose
-   7,8,9 from the list.  You can say '*' to choose everything.
-+
-What you chose are then highlighted with '*',
-like this:
-+
-------------
-           staged     unstaged path
-  1:       binary      nothing foo.png
-* 2:     +403/-35        +1/-1 git-add--interactive.perl
-------------
-+
-To remove selection, prefix the input with `-`
-like this:
-+
-------------
-Update>> -2
-------------
-+
-After making the selection, answer with an empty line to stage the
-contents of working tree files for selected paths in the index.
-
-revert::
-
-  This has a very similar UI to 'update', and the staged
-  information for selected paths are reverted to that of the
-  HEAD version.  Reverting new paths makes them untracked.
-
-add untracked::
-
-  This has a very similar UI to 'update' and
-  'revert', and lets you add untracked paths to the index.
-
-patch::
-
-  This lets you choose one path out of a 'status' like selection.
-  After choosing the path, it presents the diff between the index
-  and the working tree file and asks you if you want to stage
-  the change of each hunk.  You can select one of the following
-  options and type return:
-
-       y - stage this hunk
-       n - do not stage this hunk
-       q - quit; do not stage this hunk or any of the remaining ones
-       a - stage this hunk and all later hunks in the file
-       d - do not stage this hunk or any of the later hunks in the file
-       g - select a hunk to go to
-       / - search for a hunk matching the given regex
-       j - leave this hunk undecided, see next undecided hunk
-       J - leave this hunk undecided, see next hunk
-       k - leave this hunk undecided, see previous undecided hunk
-       K - leave this hunk undecided, see previous hunk
-       s - split the current hunk into smaller hunks
-       e - manually edit the current hunk
-       ? - print help
-+
-After deciding the fate for all hunks, if there is any hunk
-that was chosen, the index is updated with the selected hunks.
-+
-You can omit having to type return here, by setting the configuration
-variable `interactive.singleKey` to `true`.
-
-diff::
-
-  This lets you review what will be committed (i.e. between
-  HEAD and index).
-
-
-EDITING PATCHES
----------------
-
-Invoking `git add -e` or selecting `e` from the interactive hunk
-selector will open a patch in your editor; after the editor exits, the
-result is applied to the index. You are free to make arbitrary changes
-to the patch, but note that some changes may have confusing results, or
-even result in a patch that cannot be applied.  If you want to abort the
-operation entirely (i.e., stage nothing new in the index), simply delete
-all lines of the patch. The list below describes some common things you
-may see in a patch, and which editing operations make sense on them.
-
---
-added content::
-
-Added content is represented by lines beginning with "{plus}". You can
-prevent staging any addition lines by deleting them.
-
-removed content::
-
-Removed content is represented by lines beginning with "-". You can
-prevent staging their removal by converting the "-" to a " " (space).
-
-modified content::
-
-Modified content is represented by "-" lines (removing the old content)
-followed by "{plus}" lines (adding the replacement content). You can
-prevent staging the modification by converting "-" lines to " ", and
-removing "{plus}" lines. Beware that modifying only half of the pair is
-likely to introduce confusing changes to the index.
---
-
-There are also more complex operations that can be performed. But beware
-that because the patch is applied only to the index and not the working
-tree, the working tree will appear to "undo" the change in the index.
-For example, introducing a new line into the index that is in neither
-the HEAD nor the working tree will stage the new line for commit, but
-the line will appear to be reverted in the working tree.
-
-Avoid using these constructs, or do so with extreme caution.
-
---
-removing untouched content::
-
-Content which does not differ between the index and working tree may be
-shown on context lines, beginning with a " " (space).  You can stage
-context lines for removal by converting the space to a "-". The
-resulting working tree file will appear to re-add the content.
-
-modifying existing content::
-
-One can also modify context lines by staging them for removal (by
-converting " " to "-") and adding a "{plus}" line with the new content.
-Similarly, one can modify "{plus}" lines for existing additions or
-modifications. In all cases, the new modification will appear reverted
-in the working tree.
-
-new content::
-
-You may also add new content that does not exist in the patch; simply
-add new lines, each starting with "{plus}". The addition will appear
-reverted in the working tree.
---
-
-There are also several operations which should be avoided entirely, as
-they will make the patch impossible to apply:
-
-* adding context (" ") or removal ("-") lines
-* deleting context or removal lines
-* modifying the contents of context or removal lines
-
-SEE ALSO
---------
-linkgit:git-status[1]
-linkgit:git-rm[1]
-linkgit:git-reset[1]
-linkgit:git-mv[1]
-linkgit:git-commit[1]
-linkgit:git-update-index[1]
-
-GIT
----
-Part of the linkgit:git[1] suite