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

[PATCH v2 8/9] git submodule: infrastructure for reading .gitmodules files in arbitrary locations

From
Peter Collingbourne <peter@pcc.me.uk>
Date
Apr 10, 2010, 18:23 UTC
Message-ID
<1270923830-11830-9-git-send-email-peter@pcc.me.uk>
In-Reply-To
<1270923830-11830-1-git-send-email-peter@pcc.me.uk>

This patch modifies the module_name function in git-submodule.sh to take an optional parameter which specifies the path of the .gitmodules file to read.

Signed-off-by: Peter Collingbourne <peter@pcc.me.uk>
---
 git-submodule.sh |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)
diff --git a/git-submodule.sh b/git-submodule.sh
index f1e4e22..75c50b8 100755
--- a/git-submodule.sh
+++ b/git-submodule.sh
@@ -64,12 +64,18 @@ module_list()
 # Map submodule path to submodule name
 #
 # $1 = path
+# $2 = .gitmodules file, default ".gitmodules"
 #
 module_name()
 {
+	modfile="$2"
+	if test -z "$modfile"
+	then
+		modfile=".gitmodules"
+	fi
 	# Do we have "submodule.<something>.path = $1" defined in .gitmodules file?
 	re=$(printf '%s\n' "$1" | sed -e 's/[].[^$\\*]/\\&/g')
-	name=$( git config -f .gitmodules --get-regexp '^submodule\..*\.path$' |
+	name=$( git config -f "$modfile" --get-regexp '^submodule\..*\.path$' |
 		sed -n -e 's|^submodule\.\(.*\)\.path '"$re"'$|\1|p' )
        test -z "$name" &&
        die "No submodule mapping found in .gitmodules for path '$path'"
-- 
1.6.5
Previous: Junio C HamanoNext: Peter Collingbourne
Message 13 of 14 in “Improve handling of moving and removing submodules”
  1. 0/9 Improve handling of moving and removing submodulesPeter Collingbourne, Apr 10, 2010
  2. 1/9 Generate unique ID for submodules created using "git submodule add"Peter Collingbourne, Apr 10, 2010
  3. Sverre RabbelierApr 10, 2010
  4. 2/9 Implement "git mv" for submodulesPeter Collingbourne, Apr 10, 2010
  5. Junio C HamanoApr 11, 2010
  6. 3/9 git rm: test failure behaviour for multiple removalsPeter Collingbourne, Apr 10, 2010
  7. 4/9 git rm: display a warning for every unremovable filePeter Collingbourne, Apr 10, 2010
  8. 5/9 git rm: collect file modesPeter Collingbourne, Apr 10, 2010
  9. 6/9 Add a mode parameter to the remove_path functionPeter Collingbourne, Apr 10, 2010
  10. Junio C HamanoApr 11, 2010
  11. 7/9 git rm: do not abort due to an initialised submodulePeter Collingbourne, Apr 10, 2010
  12. Junio C HamanoApr 11, 2010
  13. 8/9 git submodule: infrastructure for reading .gitmodules files in arbitrary locationsPeter Collingbourne, Apr 10, 2010
  14. 9/9 git rm: remove submodule entries from .gitmodulesPeter Collingbourne, Apr 10, 2010

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.