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

[PATCH/RFC 4/7] git-submodule: Extract module_add from cmd_add

From
Ping Yin <pkufranky@gmail.com>
Date
Apr 10, 2008, 15:50 UTC
Message-ID
<1207842625-9210-8-git-send-email-pkufranky@gmail.com>
In-Reply-To
<1207842625-9210-7-git-send-email-pkufranky@gmail.com>

cmd_add will later handle the case adding multiple modules, so extract module_add to add a single module.

Signed-off-by: Ping Yin <pkufranky@gmail.com>
---
 git-submodule.sh |   67 +++++++++++++++++++++++++++++++----------------------
 1 files changed, 39 insertions(+), 28 deletions(-)
diff --git a/git-submodule.sh b/git-submodule.sh
index d88e3c3..996bf2c 100755
--- a/git-submodule.sh
+++ b/git-submodule.sh
@@ -155,34 +155,7 @@ module_clone()
 #
 # optional branch is stored in global branch variable
 #
-cmd_add()
-{
-	# parse $args after "submodule ... add".
-	while test $# -ne 0
-	do
-		case "$1" in
-		-b | --branch)
-			case "$2" in '') usage ;; esac
-			branch=$2
-			shift
-			;;
-		-q|--quiet)
-			quiet=1
-			;;
-		--)
-			shift
-			break
-			;;
-		-*)
-			usage
-			;;
-		*)
-			break
-			;;
-		esac
-		shift
-	done
-
+module_add() {
 	repo=$1
 	path=$2
 
@@ -226,6 +199,44 @@ cmd_add()
 }
 
 #
+# Add a new submodule to the working tree, .gitmodules and the index
+#
+# $@ = repo [path]
+#
+# optional branch is stored in global branch variable
+#
+cmd_add()
+{
+	# parse $args after "submodule ... add".
+	while test $# -ne 0
+	do
+		case "$1" in
+		-b | --branch)
+			case "$2" in '') usage ;; esac
+			branch=$2
+			shift
+			;;
+		-q|--quiet)
+			quiet=1
+			;;
+		--)
+			shift
+			break
+			;;
+		-*)
+			usage
+			;;
+		*)
+			break
+			;;
+		esac
+		shift
+	done
+
+	module_add "$1" "$2"
+}
+
+#
 # Register submodules in .git/config
 #
 # $@ = requested paths (default to all)
-- 
1.5.5.23.g2a5f
Previous: Ping YinNext: Ping Yin
Message 8 of 20 in “submodule: fallback to .gitmodules and multiple level module definition”
  1. submodule: fallback to .gitmodules and multiple level module definitionPing Yin, Apr 10, 2008
  2. 1/7 git-submodule: Extract functions module_info and module_urlPing Yin, Apr 10, 2008
  3. 1/3 git-submodule summary: --for-status optionPing Yin, Apr 10, 2008
  4. 2/3 builtin-status: submodule summary supportPing Yin, Apr 10, 2008
  5. 2/7 git-submodule: Extract absolute_url & move absolute url logic to module_clonePing Yin, Apr 10, 2008
  6. 3/3 buitin-status: Add tests for submodule summaryPing Yin, Apr 10, 2008
  7. 3/7 git-submodule: Fall back on .gitmodules if info not found in $GIT_DIR/configPing Yin, Apr 10, 2008
  8. 4/7 git-submodule: Extract module_add from cmd_addPing Yin, Apr 10, 2008
  9. 5/7 git-submodule: multi-level module definitionPing Yin, Apr 10, 2008
  10. 6/7 git-submodule: Don't die when command fails for one submodulePing Yin, Apr 10, 2008
  11. 7/7 git-submodule: "update --force" to enforce cloning non-submodulePing Yin, Apr 10, 2008
  12. Junio C HamanoApr 11, 2008
  13. Junio C HamanoApr 11, 2008
  14. Ping YinApr 12, 2008
  15. Junio C HamanoApr 11, 2008
  16. Ping YinApr 12, 2008
  17. Ping YinApr 10, 2008
  18. Junio C HamanoApr 11, 2008
  19. Ping YinApr 12, 2008
  20. Junio C HamanoApr 12, 2008

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.