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

[PATCH v2 2/2] submodule--helper.c: remove duplicate code

From
Valery Tolstov <me@vtolstov.org>
Date
Mar 9, 2017, 00:03 UTC
Message-ID
<20170309000352.18330-3-me@vtolstov.org>
In-Reply-To
<20170309000352.18330-1-me@vtolstov.org>

Remove code fragment from module_clone that duplicates functionality of connect_work_tree_and_git_dir in dir.c

Signed-off-by: Valery Tolstov <me@vtolstov.org>
---
 builtin/submodule--helper.c | 20 ++------------------
 1 file changed, 2 insertions(+), 18 deletions(-)
diff --git a/builtin/submodule--helper.c b/builtin/submodule--helper.c
index 899dc334e..405cbea07 100644
--- a/builtin/submodule--helper.c
+++ b/builtin/submodule--helper.c
@@ -579,7 +579,6 @@ static int module_clone(int argc, const char **argv, const char *prefix)
 	const char *name = NULL, *url = NULL, *depth = NULL;
 	int quiet = 0;
 	int progress = 0;
-	FILE *submodule_dot_git;
 	char *p, *path = NULL, *sm_gitdir;
 	struct strbuf rel_path = STRBUF_INIT;
 	struct strbuf sb = STRBUF_INIT;
@@ -653,27 +652,12 @@ static int module_clone(int argc, const char **argv, const char *prefix)
 		strbuf_reset(&sb);
 	}
 
-	/* Write a .git file in the submodule to redirect to the superproject. */
-	strbuf_addf(&sb, "%s/.git", path);
-	if (safe_create_leading_directories_const(sb.buf) < 0)
-		die(_("could not create leading directories of '%s'"), sb.buf);
-	submodule_dot_git = fopen(sb.buf, "w");
-	if (!submodule_dot_git)
-		die_errno(_("cannot open file '%s'"), sb.buf);
-
-	fprintf_or_die(submodule_dot_git, "gitdir: %s\n",
-		       relative_path(sm_gitdir, path, &rel_path));
-	if (fclose(submodule_dot_git))
-		die(_("could not close file %s"), sb.buf);
-	strbuf_reset(&sb);
-	strbuf_reset(&rel_path);
+	/* Connect module worktree and git dir */
+	connect_work_tree_and_git_dir(path, sm_gitdir);
 
-	/* Redirect the worktree of the submodule in the superproject's config */
 	p = git_pathdup_submodule(path, "config");
 	if (!p)
 		die(_("could not get submodule directory for '%s'"), path);
-	git_config_set_in_file(p, "core.worktree",
-			       relative_path(path, sm_gitdir, &rel_path));
 
 	/* setup alternateLocation and alternateErrorStrategy in the cloned submodule if needed */
 	git_config_get_string("submodule.alternateLocation", &sm_alternate);
-- 
2.12.0.192.gbdb9d28a5
Previous: Valery TolstovNext: Brandon Williams
Message 7 of 24 in “submodule--helper.c: remove duplicate code”
  1. submodule--helper.c: remove duplicate codeme@vtolstov.org, Mar 8, 2017
  2. Stefan BellerMar 8, 2017
  3. Valery TolstovMar 8, 2017
  4. Stefan BellerMar 8, 2017
  5. 0/2 Remove duplicate code from module_clone()Valery Tolstov, Mar 9, 2017
  6. 1/2 connect_work_tree_and_git_dir: safely create leading directoriesValery Tolstov, Mar 9, 2017
  7. 2/2 submodule--helper.c: remove duplicate codeValery Tolstov, Mar 9, 2017
  8. Brandon WilliamsMar 9, 2017
  9. 0/2 Remove duplicate code from module_clone()Valery Tolstov, Mar 9, 2017
  10. 2/2 submodule--helper.c: remove duplicate codeValery Tolstov, Mar 9, 2017
  11. Brandon WilliamsMar 9, 2017
  12. Junio C HamanoMar 10, 2017
  13. Stefan BellerMar 10, 2017
  14. Junio C HamanoMar 10, 2017
  15. Stefan BellerMar 10, 2017
  16. Valery TolstovMar 9, 2017
  17. 1/2 connect_work_tree_and_git_dir: safely create leading directoriesValery Tolstov, Mar 9, 2017
  18. Brandon WilliamsMar 9, 2017
  19. Valery TolstovMar 9, 2017
  20. Brandon WilliamsMar 9, 2017
  21. Valery TolstovMar 8, 2017
  22. Stefan BellerMar 8, 2017
  23. Junio C HamanoMar 8, 2017
  24. Stefan BellerMar 8, 2017

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.