git-submodule: replace duplicated code with a module_list function
Several call sites in git-submodule.sh used the same idiom for getting submodule information: git ls-files --stage -- "$@" | grep '^160000 ' This patch removes this duplication by introducing a module_list function. Signed-off-by: David Aguilar <davvid@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
34ad1afa71
commit
a7b3269c4b
@ -53,6 +53,15 @@ resolve_relative_url ()
|
|||||||
echo "$remoteurl/$url"
|
echo "$remoteurl/$url"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Get submodule info for registered submodules
|
||||||
|
# $@ = path to limit submodule list
|
||||||
|
#
|
||||||
|
module_list()
|
||||||
|
{
|
||||||
|
git ls-files --stage -- "$@" | grep '^160000 '
|
||||||
|
}
|
||||||
|
|
||||||
#
|
#
|
||||||
# Map submodule path to submodule name
|
# Map submodule path to submodule name
|
||||||
#
|
#
|
||||||
@ -206,7 +215,7 @@ cmd_add()
|
|||||||
#
|
#
|
||||||
cmd_foreach()
|
cmd_foreach()
|
||||||
{
|
{
|
||||||
git ls-files --stage | grep '^160000 ' |
|
module_list |
|
||||||
while read mode sha1 stage path
|
while read mode sha1 stage path
|
||||||
do
|
do
|
||||||
if test -e "$path"/.git
|
if test -e "$path"/.git
|
||||||
@ -246,7 +255,7 @@ cmd_init()
|
|||||||
shift
|
shift
|
||||||
done
|
done
|
||||||
|
|
||||||
git ls-files --stage -- "$@" | grep '^160000 ' |
|
module_list "$@" |
|
||||||
while read mode sha1 stage path
|
while read mode sha1 stage path
|
||||||
do
|
do
|
||||||
# Skip already registered paths
|
# Skip already registered paths
|
||||||
@ -304,7 +313,7 @@ cmd_update()
|
|||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
git ls-files --stage -- "$@" | grep '^160000 ' |
|
module_list "$@" |
|
||||||
while read mode sha1 stage path
|
while read mode sha1 stage path
|
||||||
do
|
do
|
||||||
name=$(module_name "$path") || exit
|
name=$(module_name "$path") || exit
|
||||||
@ -569,7 +578,7 @@ cmd_status()
|
|||||||
shift
|
shift
|
||||||
done
|
done
|
||||||
|
|
||||||
git ls-files --stage -- "$@" | grep '^160000 ' |
|
module_list "$@" |
|
||||||
while read mode sha1 stage path
|
while read mode sha1 stage path
|
||||||
do
|
do
|
||||||
name=$(module_name "$path") || exit
|
name=$(module_name "$path") || exit
|
||||||
|
Loading…
Reference in New Issue
Block a user