git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH] submodule: add verbose mode for add/update

From
Jens Lehmann <jens.lehmann@web.de>
Date
Apr 10, 2013, 20:00 UTC
Message-ID
<5165C4EA.60308@web.de>
In-Reply-To
<1365618262-8024-1-git-send-email-orgads@gmail.com>
Am 10.04.2013 20:24, schrieb Orgad Shaneh:
> Executes checkout without -q
Nice, looks like you picked the proposal I made last September:
  http://permalink.gmane.org/gmane.comp.version-control.git/204747

The change is looking good, but you still need to document the new option in Documentation/git-submodule.txt too please.

And the commit message is still too short, as I said in that other thread:

On Tue, Sep 4, 2012 at 6:28 PM, Jens Lehmann <Jens.Lehmann@web.de> wrote:
> Before the "Signed-off-by" is the place where you should have
> explained why this would be a worthwhile change ;-)

And you answered to that with something that would really make sense as first part of the commit message, because you explain *why* you do that change:

Am 05.09.2012 13:42, schrieb Orgad and Raizel Shaneh:
> When I run 'git submodule update' I don't expect to be in the dark
> until the submodule/s finishes checkout, this sometimes can take a
> significant amount of time and feedback is expected.
Another paragraph after that should explain *how* you do it.

So what about the following as commit message: -------------------------------------------------------------- When 'git submodule add/update' is run there is no output during checkout. This can take a significant amount of time and it would be nice if user could enable some feedback to see what's going on.

Add the -v/--verbose option to both add and update which suppresses the -q normally given to checkout so the user sees progress output from the checkout command.

<Your Signed-off-by goes here> --------------------------------------------------------------

I'm looking forward to your next iteration.
Show 74 quoted lines
> ---
>  git-submodule.sh |   24 +++++++++++++++++++-----
>  1 file changed, 19 insertions(+), 5 deletions(-)
> 
> diff --git a/git-submodule.sh b/git-submodule.sh
> index 79bfaac..f7964ad 100755
> --- a/git-submodule.sh
> +++ b/git-submodule.sh
> @@ -5,11 +5,11 @@
>  # Copyright (c) 2007 Lars Hjemli
>  
>  dashless=$(basename "$0" | sed -e 's/-/ /')
> -USAGE="[--quiet] add [-b <branch>] [-f|--force] [--name <name>] [--reference <repository>] [--] <repository> [<path>]
> +USAGE="[--quiet] add [-b <branch>] [-f|--force] [--name <name>] [--reference <repository>] [-v|--verbose] [--] <repository> [<path>]
>     or: $dashless [--quiet] status [--cached] [--recursive] [--] [<path>...]
>     or: $dashless [--quiet] init [--] [<path>...]
>     or: $dashless [--quiet] deinit [-f|--force] [--] <path>...
> -   or: $dashless [--quiet] update [--init] [--remote] [-N|--no-fetch] [-f|--force] [--rebase] [--reference <repository>] [--merge] [--recursive] [--] [<path>...]
> +   or: $dashless [--quiet] update [--init] [--remote] [-N|--no-fetch] [-f|--force] [--rebase] [--reference <repository>] [--merge] [--recursive] [-v|--verbose] [--] [<path>...]
>     or: $dashless [--quiet] summary [--cached|--files] [--summary-limit <n>] [commit] [--] [<path>...]
>     or: $dashless [--quiet] foreach [--recursive] <command>
>     or: $dashless [--quiet] sync [--recursive] [--] [<path>...]"
> @@ -309,6 +309,9 @@ cmd_add()
>  			custom_name=$2
>  			shift
>  			;;
> +		-v|--verbose)
> +			VERBOSE=1
> +			;;
>  		--)
>  			shift
>  			break
> @@ -408,11 +411,15 @@ Use -f if you really want to add it." >&2
>  		module_clone "$sm_path" "$sm_name" "$realrepo" "$reference" || exit
>  		(
>  			clear_local_git_env
> +			if test -z "$VERBOSE"
> +			then
> +				subquiet=-q
> +			fi
>  			cd "$sm_path" &&
>  			# ash fails to wordsplit ${branch:+-b "$branch"...}
>  			case "$branch" in
> -			'') git checkout -f -q ;;
> -			?*) git checkout -f -q -B "$branch" "origin/$branch" ;;
> +			'') git checkout -f $subquiet ;;
> +			?*) git checkout -f $subquiet -B "$branch" "origin/$branch" ;;
>  			esac
>  		) || die "$(eval_gettext "Unable to checkout submodule '\$sm_path'")"
>  	fi
> @@ -676,6 +683,9 @@ cmd_update()
>  		--checkout)
>  			update="checkout"
>  			;;
> +		-v|--verbose)
> +			VERBOSE=1
> +			;;
>  		--)
>  			shift
>  			break
> @@ -799,7 +809,11 @@ Maybe you want to use 'update --init'?")"
>  				must_die_on_failure=yes
>  				;;
>  			*)
> -				command="git checkout $subforce -q"
> +				if test -z "$VERBOSE"
> +				then
> +					subquiet=-q
> +				fi
> +				command="git checkout $subforce $subquiet"
>  				die_msg="$(eval_gettext "Unable to checkout '\$sha1' in submodule path '\$prefix\$sm_path'")"
>  				say_msg="$(eval_gettext "Submodule path '\$prefix\$sm_path': checked out '\$sha1'")"
>  				;;
> 
Previous: Orgad ShanehNext: Orgad Shaneh
Message 2 of 3 in “submodule: add verbose mode for add/update”
  1. submodule: add verbose mode for add/updateOrgad Shaneh, Apr 10, 2013
  2. Jens LehmannApr 10, 2013
  3. Fwd: [PATCH] submodule: add verbose mode for add/updateOrgad Shaneh, Apr 10, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.