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

[PATCH] git-svn: try to read the dcommit url from the config file

From
Peter Oberndorfer <kumbayo84@arcor.de>
Date
Feb 19, 2009, 18:30 UTC
Message-ID
<200902191930.10139.kumbayo84@arcor.de>

The commit url is determined in the following order --commit-url commandline svn-remote.<name>.dcommiturl svn-remote.<name>.url

Signed-off-by: Peter Oberndorfer <kumbayo84@arcor.de>
---

I find it really boring to always specify --commit-url on the git svn dcommit command line. And it tends to fall out of my bash_history since i do not commit often. Setting up the commit url 1 time should be enough.

I feel that the config key: part im the documentation should get more exposure or explanation. Maybe somebody can suggest some wording?

Also the dcommiturl name is still a suggestion
My kdelibs git-svn config file no looks like this:
[svn-remote "svn"]
	url = svn://anonsvn.kde.org/home/kde/trunk/KDE/kdelibs
	fetch = :refs/remotes/git-svn
	dcommiturl = svn+ssh://username@svn.kde.org/home/kde/trunk/KDE/kdelibs
 Documentation/git-svn.txt |    2 ++
 git-svn.perl              |   12 +++++++++++-
 2 files changed, 13 insertions(+), 1 deletions(-)
diff --git a/Documentation/git-svn.txt b/Documentation/git-svn.txt
index 3d45654..0d11428 100644
--- a/Documentation/git-svn.txt
+++ b/Documentation/git-svn.txt
@@ -169,6 +169,8 @@ and have no uncommitted changes.
 	reused if a user is later given access to an alternate transport
 	method (e.g. `svn+ssh://` or `https://`) for commit.
 
+config key: svn-remote.<name>.dcommiturl
+
 	Using this option for any other purpose (don't ask)
 	is very strongly discouraged.
 --
diff --git a/git-svn.perl b/git-svn.perl
index 83cb36f..2ad3603 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -438,7 +438,17 @@ sub cmd_dcommit {
 		die "Unable to determine upstream SVN information from ",
 		    "$head history.\nPerhaps the repository is empty.";
 	}
-	$url = defined $_commit_url ? $_commit_url : $gs->full_url;
+
+	if (defined $_commit_url) {
+		$url = $_commit_url;
+	} else {
+		$url = eval { command_oneline('config', '--get',
+			      "svn-remote.$gs->{repo_id}.dcommiturl") };
+		if (!$url) {
+			$url = $gs->full_url
+		}
+	}
+
 	my $last_rev = $_revision if defined $_revision;
 	if ($url) {
 		print "Committing to $url ...\n";
-- 
1.6.1.3
Next: Peter Oberndorfer
Message 1 of 10 in “git-svn: try to read the dcommit url from the config file”
  1. git-svn: try to read the dcommit url from the config filePeter Oberndorfer, Feb 19, 2009
  2. git svn dcommit difficulties/feature requestPeter Oberndorfer, Feb 19, 2009
  3. Kevin MenardFeb 20, 2009
  4. Eric WongFeb 21, 2009
  5. Eric WongFeb 21, 2009
  6. Peter OberndorferFeb 22, 2009
  7. Eric WongFeb 23, 2009
  8. git-svn: read the dcommit url from the config file on a per remote basisPeter Oberndorfer, Feb 23, 2009
  9. Eric WongFeb 23, 2009
  10. Junio C HamanoFeb 23, 2009

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.