summaryrefslogtreecommitdiff
path: root/Documentation/git-rm.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Documentation/git-rm.txt')
-rw-r--r--Documentation/git-rm.txt98
1 files changed, 98 insertions, 0 deletions
diff --git a/Documentation/git-rm.txt b/Documentation/git-rm.txt
new file mode 100644
index 0000000000..be61a82164
--- /dev/null
+++ b/Documentation/git-rm.txt
@@ -0,0 +1,98 @@
+git-rm(1)
+=========
+
+NAME
+----
+git-rm - Remove files from the working tree and from the index
+
+SYNOPSIS
+--------
+'git-rm' [-f] [-n] [-r] [--cached] [--ignore-unmatch] [--quiet] [--] <file>...
+
+DESCRIPTION
+-----------
+Remove files from the working tree and from the index. The
+files have to be identical to the tip of the branch, and no
+updates to its contents must have been placed in the staging
+area (aka index). When --cached is given, the staged content has to
+match either the tip of the branch *or* the file on disk.
+
+
+OPTIONS
+-------
+<file>...::
+ Files to remove. Fileglobs (e.g. `*.c`) can be given to
+ remove all matching files. Also a leading directory name
+ (e.g. `dir` to add `dir/file1` and `dir/file2`) can be
+ given to remove all files in the directory, recursively,
+ but this requires `-r` option to be given for safety.
+
+-f::
+ Override the up-to-date check.
+
+-n::
+ Don't actually remove the file(s), just show if they exist in
+ the index.
+
+-r::
+ Allow recursive removal when a leading directory name is
+ given.
+
+\--::
+ 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).
+
+\--cached::
+ This option can be used to tell the command to remove
+ the paths only from the index, leaving working tree
+ files.
+
+\--ignore-unmatch::
+ Exit with a zero status even if no files matched.
+
+\--quiet::
+ git-rm normally outputs one line (in the form of an "rm" command)
+ for each file removed. This option suppresses that output.
+
+
+DISCUSSION
+----------
+
+The list of <file> given to the command can be exact pathnames,
+file glob patterns, or leading directory name. The command
+removes only the paths that is known to git. Giving the name of
+a file that you have not told git about does not remove that file.
+
+
+EXAMPLES
+--------
+git-rm Documentation/\\*.txt::
+ Removes all `\*.txt` files from the index that are under the
+ `Documentation` directory and any of its subdirectories.
++
+Note that the asterisk `\*` is quoted from the shell in this
+example; this lets the command include the files from
+subdirectories of `Documentation/` directory.
+
+git-rm -f git-*.sh::
+ Remove all git-*.sh scripts that are in the index.
+ Because this example lets the shell expand the asterisk
+ (i.e. you are listing the files explicitly), it
+ does not remove `subdir/git-foo.sh`.
+
+See Also
+--------
+gitlink:git-add[1]
+
+Author
+------
+Written by Linus Torvalds <torvalds@osdl.org>
+
+Documentation
+--------------
+Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.
+
+GIT
+---
+Part of the gitlink:git[7] suite