summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 52f2852)
raw | patch | inline | side by side (parent: 52f2852)
author | Junio C Hamano <junkio@cox.net> | |
Wed, 13 Jul 2005 19:52:35 +0000 (12:52 -0700) | ||
committer | Linus Torvalds <torvalds@g5.osdl.org> | |
Wed, 13 Jul 2005 20:09:17 +0000 (13:09 -0700) |
I got tired of maintaining almost duplicated descriptions in
diff-* brothers, both in usage string and documentation.
Signed-off-by: Junio C Hamano <junkio@cox.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
diff-* brothers, both in usage string and documentation.
Signed-off-by: Junio C Hamano <junkio@cox.net>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Documentation/Makefile | patch | blob | history | |
Documentation/diff-options.txt | [new file with mode: 0644] | patch | blob |
Documentation/git-diff-cache.txt | patch | blob | history | |
Documentation/git-diff-files.txt | patch | blob | history | |
Documentation/git-diff-stages.txt | patch | blob | history | |
Documentation/git-diff-tree.txt | patch | blob | history | |
diff-cache.c | patch | blob | history | |
diff-files.c | patch | blob | history | |
diff-stages.c | patch | blob | history | |
diff-tree.c | patch | blob | history | |
diff.h | patch | blob | history |
diff --git a/Documentation/Makefile b/Documentation/Makefile
index e3844f213bdf39446e7b083684116141f41e573f..353fe7c986b2ff1f5a60b28a1fe714fc01b25a78 100644 (file)
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
man7: $(DOC_MAN7)
# 'include' dependencies
-git-diff-%.txt: diff-format.txt
+git-diff-%.txt: diff-format.txt diff-options.txt
touch $@
clean:
diff --git a/Documentation/diff-options.txt b/Documentation/diff-options.txt
--- /dev/null
@@ -0,0 +1,53 @@
+-p::
+ Generate patch (see section on generating patches)
+
+-u::
+ Synonym for "-p".
+
+-r::
+ Look recursivelly in subdirectories; this flag does not
+ mean anything to commands other than "git-diff-tree";
+ other commands always looks at all the subdirectories.
+
+-z::
+ \0 line termination on output
+
+--name-only::
+ Show only names of changed files.
+
+--name-only-z::
+ Same as --name-only, but terminate lines with NUL.
+
+-B::
+ Break complete rewrite changes into pairs of delete and create.
+
+-M::
+ Detect renames.
+
+-C::
+ Detect copies as well as renames.
+
+--find-copies-harder::
+ By default, -C option finds copies only if the original
+ file of the copy was modified in the same changeset for
+ performance reasons. This flag makes the command
+ inspect unmodified files as candidates for the source of
+ copy. This is a very expensive operation for large
+ projects, so use it with caution.
+
+-S<string>::
+ Look for differences that contains the change in <string>.
+
+--pickaxe-all::
+ When -S finds a change, show all the changes in that
+ changeset, not just the files that contains the change
+ in <string>.
+
+-O<orderfile>::
+ Output the patch in the order specified in the
+ <orderfile>, which has one shell glob pattern per line.
+
+-R::
+ Swap two inputs; that is, show differences from cache or
+ on-disk file to tree contents.
+
index f6dd7037d5cd675fdf5bb0e7214a6fafb6559c10..b463593408f165c50ec0ab6639f078b2e8ae4688 100644 (file)
SYNOPSIS
--------
-'git-diff-cache' [-p] [-r] [-z] [-m] [--cached] [-R] [-B] [-M] [-C] [--find-copies-harder] [-O<orderfile>] [-S<string>] [--pickaxe-all] <tree-ish> [<path>...]
+'git-diff-cache' [-m] [--cached] [<common diff options>] <tree-ish> [<path>...]
DESCRIPTION
-----------
OPTIONS
-------
+include::diff-options.txt[]
+
<tree-ish>::
The id of a tree object to diff against.
--p::
- Generate patch (see section on generating patches)
-
--r::
- This flag does not mean anything. It is there only to match
- "git-diff-tree". Unlike "git-diff-tree", "git-diff-cache"
- always looks at all the subdirectories.
-
--z::
- \0 line termination on output
-
--B::
- Break complete rewrite changes into pairs of delete and create.
-
--M::
- Detect renames.
-
--C::
- Detect copies as well as renames.
-
---find-copies-harder::
- By default, -C option finds copies only if the original
- file of the copy was modified in the same changeset for
- performance reasons. This flag makes the command
- inspect unmodified files as candidates for the source of
- copy. This is a very expensive operation for large
- projects, so use it with caution.
-
--S<string>::
- Look for differences that contains the change in <string>.
-
---pickaxe-all::
- When -S finds a change, show all the changes in that
- changeset, not just the files that contains the change
- in <string>.
-
--O<orderfile>::
- Output the patch in the order specified in the
- <orderfile>, which has one shell glob pattern per line.
-
--R::
- Swap two inputs; that is, show differences from cache or
- on-disk file to tree contents.
-
--cached::
do not consider the on-disk file at all
index 32e9a1e7609eb6f6474bbf94be38585223fcda66..3e1244f8d316134cd33c96f74199a56bb2625e20 100644 (file)
SYNOPSIS
--------
-'git-diff-files' [-p] [-q] [-r] [-z] [-R] [-B] [-M] [-C] [--find-copies-harder] [-O<orderfile>] [-S<string>] [--pickaxe-all] [<path>...]
+'git-diff-files' [-q] [<common diff options>] [<path>...]
DESCRIPTION
-----------
OPTIONS
-------
--p::
- generate patch (see section on generating patches).
+include::diff-options.txt[]
-q::
Remain silent even on nonexisting files
--R::
- Swap two inputs; that is, show differences from on-disk files
- to cache contents.
-
--B::
- Break complete rewrite changes into pairs of delete and create.
-
--M::
- Detect renames.
-
--C::
- Detect copies as well as renames.
-
---find-copies-harder::
- By default, -C option finds copies only if the original
- file of the copy was modified in the same changeset for
- performance reasons. This flag makes the command
- inspect unmodified files as candidates for the source of
- copy. This is a very expensive operation for large
- projects, so use it with caution.
-
--S<string>::
- Look for differences that contains the change in <string>.
-
---pickaxe-all::
- When -S finds a change, show all the changes in that
- changeset, not just the files that contains the change
- in <string>.
-
--O<orderfile>::
- Output the patch in the order specified in the
- <orderfile>, which has one shell glob pattern per line.
-
--r::
- This flag does not mean anything. It is there only to match
- git-diff-tree. Unlike git-diff-tree, git-diff-files always looks
- at all the subdirectories.
-
-
Output format
-------------
include::diff-format.txt[]
index e7e59c8491e450b4e1bf5ae3d676fb0d2c9d6e0b..2084c7041f852759452b4c16026744eef9ce360e 100644 (file)
SYNOPSIS
--------
-'git-diff-stages' [-p] [-r] [-z] [-R] [-B] [-M] [-C] [--find-copies-harder] [-O<orderfile>] [-S<string>] [--pickaxe-all] <stage1> <stage2> [<path>...]
+'git-diff-stages' [<common diff options>] <stage1> <stage2> [<path>...]
DESCRIPTION
-----------
OPTIONS
-------
+include::diff-options.txt[]
+
<stage1>,<stage2>::
The stage number to be compared.
--p::
- Generate patch (see section on generating patches)
-
--r::
- This flag does not mean anything. It is there only to match
- "git-diff-tree". Unlike "git-diff-tree", "git-diff-stages"
- always looks at all the subdirectories.
-
--z::
- \0 line termination on output
-
--B::
- Break complete rewrite changes into pairs of delete and create.
-
--M::
- Detect renames.
-
--C::
- Detect copies as well as renames.
-
---find-copies-harder::
- By default, -C option finds copies only if the original
- file of the copy was modified in the same changeset for
- performance reasons. This flag makes the command
- inspect unmodified files as candidates for the source of
- copy. This is a very expensive operation for large
- projects, so use it with caution.
-
--S<string>::
- Look for differences that contains the change in <string>.
-
---pickaxe-all::
- When -S finds a change, show all the changes in that
- changeset, not just the files that contains the change
- in <string>.
-
--O<orderfile>::
- Output the patch in the order specified in the
- <orderfile>, which has one shell glob pattern per line.
-
--R::
- Swap two inputs; that is, show differences from <stage2> to
- <stage1>.
-
Output format
-------------
include::diff-format.txt[]
index ab0ba4fb1708042bce516ed6f9e22db55672736c..b2095cb04959ab2c21ee1b51ba0e7b169bd5b53d 100644 (file)
SYNOPSIS
--------
-'git-diff-tree' [-p] [-r] [-z] [--stdin] [-m] [-s] [-v] [-t] [-R] [-B] [-M] [-C] [--find-copies-harder] [-O<orderfile>] [-S<string>] [--pickaxe-all] <tree-ish> <tree-ish> [<path>...]
+'git-diff-tree' [--stdin] [-m] [-s] [-v] [--pretty] [-t] [<common diff options>] <tree-ish> <tree-ish> [<path>...]
DESCRIPTION
-----------
OPTIONS
-------
+include::diff-options.txt[]
+
<tree-ish>::
The id of a tree object.
Note that this parameter does not provide any wildcard or regexp
features.
--p::
- generate patch (see section on generating patches). For
- git-diff-tree, this flag implies '-r' as well.
-
--B::
- Break complete rewrite changes into pairs of delete and create.
-
--M::
- Detect renames.
-
--C::
- Detect copies as well as renames.
-
---find-copies-harder::
- By default, -C option finds copies only if the original
- file of the copy was modified in the same changeset for
- performance reasons. This flag makes the command
- inspect unmodified files as candidates for the source of
- copy. This is a very expensive operation for large
- projects, so use it with caution.
-
--R::
- Swap two input trees.
-
--S<string>::
- Look for differences that contains the change in <string>.
-
---pickaxe-all::
- When -S finds a change, show all the changes in that
- changeset, not just the files that contains the change
- in <string>.
-
--O<orderfile>::
- Output the patch in the order specified in the
- <orderfile>, which has one shell glob pattern per line.
-
--r::
- recurse
-
-t::
show tree entry itself as well as subtrees. Implies -r.
--z::
- \0 line termination on output
-
--root::
When '--root' is specified the initial commit will be showed as a big
creation event. This is equivalent to a diff against the NULL tree.
diff --git a/diff-cache.c b/diff-cache.c
index e1ac57dde83ce9441d9b3d591b2eab6bd8560397..c435844a255f492aa7ae367239154c3306b77194 100644 (file)
--- a/diff-cache.c
+++ b/diff-cache.c
}
static char *diff_cache_usage =
-"git-diff-cache [-p] [-r] [-z] [-m] [--cached] [-R] [-B] [-M] [-C] [--find-copies-harder] [-O<orderfile>] [-S<string>] [--pickaxe-all] <tree-ish> [<path>...]";
+"git-diff-cache [-m] [--cached] "
+"[<common diff options>] <tree-ish> [<path>...]"
+COMMON_DIFF_OPTIONS_HELP;
int main(int argc, const char **argv)
{
diff --git a/diff-files.c b/diff-files.c
index 6d2aec34067071894f8e6abc5a94fb7415bc328f..ebaf235c52f570c3bbe90bbfd4ad7d9e805f476f 100644 (file)
--- a/diff-files.c
+++ b/diff-files.c
#include "diff.h"
static const char *diff_files_usage =
-"git-diff-files [-p] [-q] [-r] [-z] [-R] [-B] [-M] [-C] [--find-copies-harder] [-O<orderfile>] [-S<string>] [--pickaxe-all] [<path>...]";
+"git-diff-files [-q] "
+"[<common diff options>] [<path>...]"
+COMMON_DIFF_OPTIONS_HELP;
static int diff_output_format = DIFF_FORMAT_HUMAN;
static int detect_rename = 0;
diff --git a/diff-stages.c b/diff-stages.c
index 9d33535fe0553867a892c8b1ed77b4eb7233579e..8d86d741791d155ac7b4c20489be6ed9288dde95 100644 (file)
--- a/diff-stages.c
+++ b/diff-stages.c
static const char *diff_filter = NULL;
static char *diff_stages_usage =
-"git-diff-stages [-p] [-r] [-z] [-R] [-B] [-M] [-C] [--find-copies-harder] [-O<orderfile>] [-S<string>] [--pickaxe-all] <stage1> <stage2> [<path>...]";
+"git-diff-stages [<common diff options>] <stage1> <stage2> [<path>...]"
+COMMON_DIFF_OPTIONS_HELP;
static void diff_stages(int stage1, int stage2)
{
diff --git a/diff-tree.c b/diff-tree.c
index f499d2ead5f3977fb0b5be2b21765c94a87ffd6f..4e80526afa3f55f71d0309c47b5eb1f04d6be402 100644 (file)
--- a/diff-tree.c
+++ b/diff-tree.c
}
static char *diff_tree_usage =
-"git-diff-tree [-p] [-r] [-z] [--stdin] [-m] [-s] [-v] [--pretty] [-t] [-R] [-B] [-M] [-C] [--find-copies-header] [-O<orderfile>] [-S<string>] [--pickaxe-all] <tree-ish> <tree-ish>";
+"git-diff-tree [--stdin] [-m] [-s] [-v] [--pretty] [-t] "
+"[<common diff options>] <tree-ish> <tree-ish>"
+COMMON_DIFF_OPTIONS_HELP;
int main(int argc, const char **argv)
{
index 46c0e236c3a894141f685f8cf1993003c0c9cf81..9f9ca8be5b628c5701ce414f105aaffae2c76a59 100644 (file)
--- a/diff.h
+++ b/diff.h
const char *pickaxe, int pickaxe_opts,
const char *orderfile, const char *filter);
+#define COMMON_DIFF_OPTIONS_HELP \
+"\ncommon diff options:\n" \
+" -r diff recursively (only meaningful in diff-tree)\n" \
+" -z output diff-raw with lines terminated with NUL.\n" \
+" -p output patch format.\n" \
+" -u synonym for -p.\n" \
+" --name-only show only names of changed files.\n" \
+" --name-only-z\n" \
+" same as --name-only but terminate lines with NUL.\n" \
+" -R swap input file pairs.\n" \
+" -B detect complete rewrites.\n" \
+" -M detect renames.\n" \
+" -C detect copies.\n" \
+" --find-copies-harder\n" \
+" try unchanged files as candidate for copy detection.\n" \
+" -O<file> reorder diffs according to the <file>.\n" \
+" -S<string> find filepair whose only one side contains the string.\n" \
+" --pickaxe-all\n" \
+" show all files diff when -S is used and hit is found.\n"
+
extern int diff_queue_is_empty(void);
#define DIFF_FORMAT_HUMAN 0