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>maint
							parent
							
								
									90279074ca
								
							
						
					
					
						commit
						93d69d8691
					
				|  | @ -49,22 +49,25 @@ install: man | ||||||
| 	$(INSTALL) $(DOC_MAN1) $(DESTDIR)/$(man1) | 	$(INSTALL) $(DOC_MAN1) $(DESTDIR)/$(man1) | ||||||
| 	$(INSTALL) $(DOC_MAN7) $(DESTDIR)/$(man7) | 	$(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 | %.dep : %.txt | ||||||
| $(patsubst %,%.html,git-merge git-pull): merge-pull-opts.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 | git.7: ../README | ||||||
|  |  | ||||||
|  |  | ||||||
| clean: | 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 | %.html : %.txt | ||||||
| 	asciidoc -b xhtml11 -d manpage -f asciidoc.conf $< | 	asciidoc -b xhtml11 -d manpage -f asciidoc.conf $< | ||||||
|  |  | ||||||
|  | @ -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. | ||||||
|  | @ -8,7 +8,7 @@ git-fetch - Download objects and a head from another repository. | ||||||
|  |  | ||||||
| SYNOPSIS | SYNOPSIS | ||||||
| -------- | -------- | ||||||
| 'git-fetch' <repository> <refspec>... | 'git-fetch' <options> <repository> <refspec>... | ||||||
|  |  | ||||||
|  |  | ||||||
| DESCRIPTION | DESCRIPTION | ||||||
|  | @ -17,24 +17,16 @@ Fetches named heads or tags from another repository, along with | ||||||
| the objects necessary to complete them. | the objects necessary to complete them. | ||||||
|  |  | ||||||
| The ref names and their object names of fetched refs are stored | 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". | operation done by "git resolve" or "git octopus". | ||||||
|  |  | ||||||
|  |  | ||||||
| OPTIONS | OPTIONS | ||||||
| ------- | ------- | ||||||
|  | include::fetch-options.txt[] | ||||||
|  |  | ||||||
| include::pull-fetch-param.txt[] | include::pull-fetch-param.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. |  | ||||||
|  |  | ||||||
| -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 | SEE ALSO | ||||||
|  |  | ||||||
|  | @ -19,7 +19,7 @@ which drives multiple merge strategy scripts. | ||||||
|  |  | ||||||
| OPTIONS | OPTIONS | ||||||
| ------- | ------- | ||||||
| include::merge-pull-opts.txt[] | include::merge-options.txt[] | ||||||
|  |  | ||||||
| <msg>:: | <msg>:: | ||||||
| 	The commit message to be used for the merge commit (in case | 	The commit message to be used for the merge commit (in case | ||||||
|  |  | ||||||
|  | @ -20,21 +20,18 @@ Note that you can use `.` (current directory) as the | ||||||
| <repository> to pull from the local repository -- this is useful | <repository> to pull from the local repository -- this is useful | ||||||
| when merging local branches into the current branch. | when merging local branches into the current branch. | ||||||
|  |  | ||||||
|  |  | ||||||
| OPTIONS | OPTIONS | ||||||
| ------- | ------- | ||||||
|  | include::merge-options.txt[] | ||||||
|  |  | ||||||
|  | include::fetch-options.txt[] | ||||||
|  |  | ||||||
| include::pull-fetch-param.txt[] | include::pull-fetch-param.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::merge-pull-opts.txt[] |  | ||||||
|  |  | ||||||
| include::merge-strategies.txt[] | include::merge-strategies.txt[] | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
| EXAMPLES | EXAMPLES | ||||||
| -------- | -------- | ||||||
|  |  | ||||||
|  | @ -72,7 +69,7 @@ $ git fetch origin master:origin +pu:pu maint:maint | ||||||
| $ git pull . origin | $ 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 | `git-clone` operation is used in combination with | ||||||
| command line options to `git-fetch` to first update | command line options to `git-fetch` to first update | ||||||
| multiple branches of the local repository and then | multiple branches of the local repository and then | ||||||
|  | @ -85,7 +82,7 @@ known to have already obtained and made available | ||||||
| all the necessary objects. | 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 | $ cat .git/remotes/origin | ||||||
|  | @ -98,7 +95,7 @@ $ git checkout master | ||||||
| $ git pull origin | $ 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 | `git-clone` operation has been hand-modified to include | ||||||
| the branch-mapping of additional remote and local | the branch-mapping of additional remote and local | ||||||
| heads directly.  A single `git-pull` operation while | heads directly.  A single `git-pull` operation while | ||||||
|  |  | ||||||
|  | @ -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). | ||||||
|  |  | ||||||
|  | @ -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). |  | ||||||
|  | @ -8,6 +8,7 @@ | ||||||
| usage () { | usage () { | ||||||
|     echo >&2 "usage: $0"' [-n] [-o dir | --stdout] [--keep-subject] [--mbox] |     echo >&2 "usage: $0"' [-n] [-o dir | --stdout] [--keep-subject] [--mbox] | ||||||
|     [--check] [--signoff] [-<diff options>...] |     [--check] [--signoff] [-<diff options>...] | ||||||
|  |     [--help] | ||||||
|     ( from..to ... | upstream [ our-head ] ) |     ( from..to ... | upstream [ our-head ] ) | ||||||
|  |  | ||||||
| Prepare each commit with its patch since our-head forked from upstream, | Prepare each commit with its patch since our-head forked from upstream, | ||||||
|  | @ -63,6 +64,9 @@ do | ||||||
|     --output-directo|--output-director|--output-directory) |     --output-directo|--output-director|--output-directory) | ||||||
|     case "$#" in 1) usage ;; esac; shift |     case "$#" in 1) usage ;; esac; shift | ||||||
|     outdir="$1" ;; |     outdir="$1" ;; | ||||||
|  |     -h|--h|--he|--hel|--help) | ||||||
|  |         usage | ||||||
|  | 	;; | ||||||
|     -*' '* | -*"$LF"* | -*'	'*) |     -*' '* | -*"$LF"* | -*'	'*) | ||||||
| 	# Ignore diff option that has whitespace for now. | 	# Ignore diff option that has whitespace for now. | ||||||
| 	;; | 	;; | ||||||
|  |  | ||||||
|  | @ -7,7 +7,14 @@ | ||||||
| . git-sh-setup || die "Not a git archive" | . git-sh-setup || die "Not a git archive" | ||||||
|  |  | ||||||
| usage () { | 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= | strategy_args= no_summary= no_commit= | ||||||
|  | @ -33,6 +40,9 @@ do | ||||||
| 		esac | 		esac | ||||||
| 		strategy_args="${strategy_args}-s $strategy " | 		strategy_args="${strategy_args}-s $strategy " | ||||||
| 		;; | 		;; | ||||||
|  | 	-h|--h|--he|--hel|--help) | ||||||
|  | 		usage | ||||||
|  | 		;; | ||||||
| 	-*) | 	-*) | ||||||
| 		# Pass thru anything that is meant for fetch. | 		# Pass thru anything that is meant for fetch. | ||||||
| 		break | 		break | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	 Jon Loeliger
						Jon Loeliger