Re: [PATCH v2 2/3] git-submodule: New subcommand 'summary' (2) - hard work

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ping Yin <pkufranky@xxxxxxxxx> writes:

> This patch does the hard work of submodule summary and finally gives
> output shown in last patch.
>
> Signed-off-by: Ping Yin <pkufranky@xxxxxxxxx>
> ---
>  git-submodule.sh |   70 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
>  1 files changed, 69 insertions(+), 1 deletions(-)
>
> diff --git a/git-submodule.sh b/git-submodule.sh
> index 8009a8d..8322771 100755
> --- a/git-submodule.sh
> +++ b/git-submodule.sh
> @@ -380,7 +380,75 @@ cmd_summary()
>  	# TODO: quote module names containing space or tab
>  	test -n "$modules" &&
>  	echo "# Submodules modified: "$modules &&
> -	echo "#"
> +	echo "#" &&
> +	git diff $cache_option --raw $head -- $modules |
> +	grep '^:160000\|:[0-9]\+ 160000' |
> +	cut -c2- |

Same issues as before.  It might be worthwhile to write this part all in
Perl, I suspect...

> +	while read mod_src mod_dst sha1_src sha1_dst status name
> +	do
> +		sha1_src=$(echo $sha1_src | sed -e 's/\.\.\.//')
> +		sha1_dst=$(echo $sha1_dst | sed -e 's/\.\.\.//')

This is unneeded if you used the right tool, i.e. diff-index.

> +		check_src=$(echo $mod_src | grep 160000)
> +		check_dst=$(echo $mod_dst | grep 160000)

Huh?  Do you mean "test $mod_src = ':160000'" and such?

> +		errmsg=
> +		unfound_src=
> +		unfound_dst=

Perhaps "missing" is a better word.

> +		test -z "$check_src" ||
> +		GIT_DIR="$name/.git" git-rev-parse --verify $sha1_src^0 >/dev/null 2>&1 ||
> +		unfound_src=t

You do not want to do ^0; you will not be bind a non-commit in gitlink
entry anyway.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux