Update bash completion with new 1.5.3 command line options

A number of commands have learned new tricks as part of git 1.5.3.
If these are long options (--foo) we tend to support them in the
bash completion, as it makes the user's task of using the option
slightly easier.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash
index 52b2893..8f27aa9 100755
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -419,7 +419,7 @@
 	local cur="${COMP_WORDS[COMP_CWORD]}"
 	case "$cur" in
 	--*)
-		__gitcomp "--interactive"
+		__gitcomp "--interactive --refresh"
 		return
 	esac
 	COMPREPLY=()
@@ -573,6 +573,7 @@
 			--stdout --attach --thread
 			--output-directory
 			--numbered --start-number
+			--numbered-files
 			--keep-subject
 			--signoff
 			--in-reply-to=
@@ -590,7 +591,7 @@
 	local cur="${COMP_WORDS[COMP_CWORD]}"
 	case "$cur" in
 	--*)
-		__gitcomp "--prune"
+		__gitcomp "--prune --aggressive"
 		return
 		;;
 	esac
@@ -617,14 +618,20 @@
 			" "" "${cur##--pretty=}"
 		return
 		;;
+	--date=*)
+		__gitcomp "
+			relative iso8601 rfc2822 short local default
+		" "" "${cur##--date=}"
+		return
+		;;
 	--*)
 		__gitcomp "
 			--max-count= --max-age= --since= --after=
 			--min-age= --before= --until=
 			--root --topo-order --date-order --reverse
-			--no-merges
+			--no-merges --follow
 			--abbrev-commit --abbrev=
-			--relative-date
+			--relative-date --date=
 			--author= --committer= --grep=
 			--all-match
 			--pretty= --name-status --name-only --raw
@@ -796,7 +803,7 @@
 	case "$cur" in
 	--*)
 		__gitcomp "
-			--global --system
+			--global --system --file=
 			--list --replace-all
 			--get --get-all --get-regexp
 			--add --unset --unset-all
@@ -839,6 +846,7 @@
 		core.ignoreStat
 		core.preferSymlinkRefs
 		core.logAllRefUpdates
+		core.loosecompression
 		core.repositoryFormatVersion
 		core.sharedRepository
 		core.warnAmbiguousRefs
@@ -870,6 +878,7 @@
 		diff.renames
 		fetch.unpackLimit
 		format.headers
+		format.subjectprefix
 		gitcvs.enabled
 		gitcvs.logfile
 		gitcvs.allbinary
@@ -896,6 +905,10 @@
 		merge.verbosity
 		pack.window
 		pack.depth
+		pack.windowMemory
+		pack.compression
+		pack.deltaCacheSize
+		pack.deltaCacheLimit
 		pull.octopus
 		pull.twohead
 		repack.useDeltaBaseOffset
@@ -1024,7 +1037,14 @@
 	if [ $c -eq $COMP_CWORD -a -z "$command" ]; then
 		case "${COMP_WORDS[COMP_CWORD]}" in
 		--*=*) COMPREPLY=() ;;
-		--*)   __gitcomp "--git-dir= --bare --version --exec-path" ;;
+		--*)   __gitcomp "
+			--no-pager
+			--git-dir=
+			--bare
+			--version
+			--exec-path
+			"
+			;;
 		*)     __gitcomp "$(__git_commands) $(__git_aliases)" ;;
 		esac
 		return