diff options
author | Jon Loeliger <jdl@freescale.com> | 2005-11-06 23:30:56 -0600 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2005-11-06 23:32:04 -0800 |
commit | 93d69d86912c44206543f6670e93f9fc6f2f859f (patch) | |
tree | 0ad7728ed8054bfbcaa42960a7e9a90532d89f18 | |
parent | 90279074ca5cc336a8bfffd47d19d089b291b432 (diff) | |
download | git-93d69d86912c44206543f6670e93f9fc6f2f859f.tar.gz git-93d69d86912c44206543f6670e93f9fc6f2f859f.tar.xz |
Refactored merge options into separate merge-options.txt.
Refactored fetch options into separate fetch-options.txt.
Made git-merge use merge-options.
Made git-fetch use fetch-options.
Made git-pull use merge-options and fetch-options.
Added --help option to git-pull and git-format-patch scripts.
Rewrote Documentation/Makefile to dynamically determine
include dependencies.
Signed-off-by: Jon Loeliger <jdl@freescale.com>
Signed-off-by: Junio C Hamano <junkio@cox.net>
-rw-r--r-- | Documentation/Makefile | 23 | ||||
-rw-r--r-- | Documentation/fetch-options.txt | 14 | ||||
-rw-r--r-- | Documentation/git-fetch.txt | 16 | ||||
-rw-r--r-- | Documentation/git-merge.txt | 2 | ||||
-rw-r--r-- | Documentation/git-pull.txt | 17 | ||||
-rw-r--r-- | Documentation/merge-options.txt | 16 | ||||
-rw-r--r-- | Documentation/merge-pull-opts.txt | 14 | ||||
-rwxr-xr-x | git-format-patch.sh | 4 | ||||
-rw-r--r--[-rwxr-xr-x] | git-pull.sh | 12 |
9 files changed, 70 insertions, 48 deletions
diff --git a/Documentation/Makefile b/Documentation/Makefile index 741f14cfa..bb9533ff0 100644 --- a/Documentation/Makefile +++ b/Documentation/Makefile @@ -49,22 +49,25 @@ install: man $(INSTALL) $(DOC_MAN1) $(DESTDIR)/$(man1) $(INSTALL) $(DOC_MAN7) $(DESTDIR)/$(man7) -# 'include' dependencies -$(patsubst %.txt,%.1,$(wildcard git-diff-*.txt)): \ - diff-format.txt diff-options.txt -$(patsubst %.txt,%.html,$(wildcard git-diff-*.txt)): \ - diff-format.txt diff-options.txt -$(patsubst %,%.1,git-fetch git-pull git-push): pull-fetch-param.txt -$(patsubst %,%.html,git-fetch git-pull git-push): pull-fetch-param.txt +# +# Determine "include::" file references in asciidoc files. +# +TEXTFILES = $(wildcard *.txt) +DEPFILES = $(TEXTFILES:%.txt=%.dep) -$(patsubst %,%.1,git-merge git-pull): merge-pull-opts.txt -$(patsubst %,%.html,git-merge git-pull): merge-pull-opts.txt +%.dep : %.txt + @rm -f $@ + @$(foreach dep, $(shell grep include:: $< | sed -e 's/include::/ /' -e 's/\[\]//'), \ + echo $(<:%.txt=%.html) $(<:%.txt=%.1) : $(dep) >> $@; ) + +-include $(DEPFILES) git.7: ../README + clean: - rm -f *.xml *.html *.1 *.7 howto-index.txt howto/*.html + rm -f *.xml *.html *.1 *.7 howto-index.txt howto/*.html *.dep %.html : %.txt asciidoc -b xhtml11 -d manpage -f asciidoc.conf $< diff --git a/Documentation/fetch-options.txt b/Documentation/fetch-options.txt new file mode 100644 index 000000000..12d12b27e --- /dev/null +++ b/Documentation/fetch-options.txt @@ -0,0 +1,14 @@ +-a, \--append:: + Append ref names and object names of fetched refs to the + existing contents of `.git/FETCH_HEAD`. Without this + option old data in `.git/FETCH_HEAD` will be overwritten. + +-f, \--force:: + +-t, \--tags:: + +-u, \--update-head-ok:: + By default `git-fetch` refuses to update the head which + corresponds to the current branch. This flag disables the + check. Note that fetching into the current branch will not + update the index and working directory, so use it with care. diff --git a/Documentation/git-fetch.txt b/Documentation/git-fetch.txt index 73f8a99ff..438240c0c 100644 --- a/Documentation/git-fetch.txt +++ b/Documentation/git-fetch.txt @@ -8,7 +8,7 @@ git-fetch - Download objects and a head from another repository. SYNOPSIS -------- -'git-fetch' <repository> <refspec>... +'git-fetch' <options> <repository> <refspec>... DESCRIPTION @@ -17,24 +17,16 @@ Fetches named heads or tags from another repository, along with the objects necessary to complete them. The ref names and their object names of fetched refs are stored -in $GIT_DIR/FETCH_HEAD. This information is left for a later merge +in `.git/FETCH_HEAD`. This information is left for a later merge operation done by "git resolve" or "git octopus". OPTIONS ------- -include::pull-fetch-param.txt[] +include::fetch-options.txt[] --a, \--append:: - Append ref names and object names of fetched refs to the - existing contents of $GIT_DIR/FETCH_HEAD. Without this - option old data in $GIT_DIR/FETCH_HEAD will be overwritten. +include::pull-fetch-param.txt[] --u, \--update-head-ok:: - By default 'git-fetch' refuses to update the head which - corresponds to the current branch. This flag disables the - check. Note that fetching into the current branch will not - update the index and working directory, so use it with care. SEE ALSO diff --git a/Documentation/git-merge.txt b/Documentation/git-merge.txt index b3ef19bae..904e2fc4c 100644 --- a/Documentation/git-merge.txt +++ b/Documentation/git-merge.txt @@ -19,7 +19,7 @@ which drives multiple merge strategy scripts. OPTIONS ------- -include::merge-pull-opts.txt[] +include::merge-options.txt[] <msg>:: The commit message to be used for the merge commit (in case diff --git a/Documentation/git-pull.txt b/Documentation/git-pull.txt index 7ebb08da0..c65ca9a53 100644 --- a/Documentation/git-pull.txt +++ b/Documentation/git-pull.txt @@ -20,21 +20,18 @@ Note that you can use `.` (current directory) as the <repository> to pull from the local repository -- this is useful when merging local branches into the current branch. + OPTIONS ------- -include::pull-fetch-param.txt[] +include::merge-options.txt[] --a, \--append:: - Append ref names and object names of fetched refs to the - existing contents of `$GIT_DIR/FETCH_HEAD`. Without this - option old data in `$GIT_DIR/FETCH_HEAD` will be overwritten. +include::fetch-options.txt[] -include::merge-pull-opts.txt[] +include::pull-fetch-param.txt[] include::merge-strategies.txt[] - EXAMPLES -------- @@ -72,7 +69,7 @@ $ git fetch origin master:origin +pu:pu maint:maint $ git pull . origin ------------------------------------------------ + -Here, a typical `$GIT_DIR/remotes/origin` file from a +Here, a typical `.git/remotes/origin` file from a `git-clone` operation is used in combination with command line options to `git-fetch` to first update multiple branches of the local repository and then @@ -85,7 +82,7 @@ known to have already obtained and made available all the necessary objects. -Pull of multiple branches from one repository using `$GIT_DIR/remotes` file:: +Pull of multiple branches from one repository using `.git/remotes` file:: + ------------------------------------------------ $ cat .git/remotes/origin @@ -98,7 +95,7 @@ $ git checkout master $ git pull origin ------------------------------------------------ + -Here, a typical `$GIT_DIR/remotes/origin` file from a +Here, a typical `.git/remotes/origin` file from a `git-clone` operation has been hand-modified to include the branch-mapping of additional remote and local heads directly. A single `git-pull` operation while diff --git a/Documentation/merge-options.txt b/Documentation/merge-options.txt new file mode 100644 index 000000000..eebaf3aaf --- /dev/null +++ b/Documentation/merge-options.txt @@ -0,0 +1,16 @@ +-n, \--no-summary:: + Do not show diffstat at the end of the merge. + +--no-commit:: + Perform the merge but pretend the merge failed and do + not autocommit, to give the user a chance to inspect and + further tweak the merge result before committing. + + +-s <strategy>, \--strategy=<strategy>:: + Use the given merge strategy; can be supplied more than + once to specify them in the order they should be tried. + If there is no `-s` option, a built-in list of strategies + is used instead (`git-merge-resolve` when merging a single + head, `git-merge-octopus` otherwise). + diff --git a/Documentation/merge-pull-opts.txt b/Documentation/merge-pull-opts.txt deleted file mode 100644 index d9164a04a..000000000 --- a/Documentation/merge-pull-opts.txt +++ /dev/null @@ -1,14 +0,0 @@ --n, --no-summary:: - Do not show diffstat at the end of the merge. - ---no-commit:: - Perform the merge but pretend the merge failed and do - not autocommit, to give the user a chance to inspect and - further tweak the merge result before committing. - --s <strategy>:: - use that merge strategy; can be given more than once to - specify them in the order they should be tried. If - there is no `-s` option, built-in list of strategies is - used instead (`git-merge-resolve` when merging a single - head, `git-merge-octopus` otherwise). diff --git a/git-format-patch.sh b/git-format-patch.sh index b43ba3909..548d2d584 100755 --- a/git-format-patch.sh +++ b/git-format-patch.sh @@ -8,6 +8,7 @@ usage () { echo >&2 "usage: $0"' [-n] [-o dir | --stdout] [--keep-subject] [--mbox] [--check] [--signoff] [-<diff options>...] + [--help] ( from..to ... | upstream [ our-head ] ) Prepare each commit with its patch since our-head forked from upstream, @@ -63,6 +64,9 @@ do --output-directo|--output-director|--output-directory) case "$#" in 1) usage ;; esac; shift outdir="$1" ;; + -h|--h|--he|--hel|--help) + usage + ;; -*' '* | -*"$LF"* | -*' '*) # Ignore diff option that has whitespace for now. ;; diff --git a/git-pull.sh b/git-pull.sh index e23d4f559..2358af62d 100755..100644 --- a/git-pull.sh +++ b/git-pull.sh @@ -7,7 +7,14 @@ . git-sh-setup || die "Not a git archive" usage () { - die "git pull [-n] [--no-commit] [-s strategy]... <repo> <head>..." + echo >&2 "usage: $0"' [-n] [--no-commit] [--no-summary] [--help] + [-s strategy]... + [<fetch-options>] + <repo> <head>... + +Fetch one or more remote refs and merge it/them into the current HEAD. +' + exit 1 } strategy_args= no_summary= no_commit= @@ -33,6 +40,9 @@ do esac strategy_args="${strategy_args}-s $strategy " ;; + -h|--h|--he|--hel|--help) + usage + ;; -*) # Pass thru anything that is meant for fetch. break |