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

[FYI/PATCH 1/5] Git::SVN: introduce path accessor

From
Jonathan Nieder <jrnieder@gmail.com>
Date
Sep 17, 2012, 09:08 UTC
Message-ID
<20120917090820.GB358@elie.Belkin>
In-Reply-To
<20120917090435.GA358@elie.Belkin>
From: Michael G. Schwern <schwern@pobox.com>
Date: Fri, 27 Jul 2012 13:00:48 -0700

Each Git::SVN handle has a (base) URL and a (relative) path pointing to the top-level directory of the branch it handles. Introduce a getter and setter for the path as preparation for automatically canonicalizing it when reading or writing.

For example, instead of
	$oldpath = $gs->{path};
	$gs->{path} = $url;
	$gs->{path} =~ s!^\Q$min_url\E(/|$)!!;
now you can write
	$oldpath = $gs->path;
	$url =~ s!^\Q$min_url\E(/|$)!!;
	$gs->path($url);
[jn: split from a larger patch]
Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
---
 perl/Git/SVN.pm |   12 ++++++++++++
 1 file changed, 12 insertions(+)
diff --git a/perl/Git/SVN.pm b/perl/Git/SVN.pm
index b8b34744..268e0e84 100644
--- a/perl/Git/SVN.pm
+++ b/perl/Git/SVN.pm
@@ -2282,6 +2282,18 @@ sub _new {
 	        map_root => "$dir/.rev_map", repo_id => $repo_id }, $class;
 }
 
+sub path {
+	my $self = shift;
+
+	if (@_) {
+		my $path = shift;
+		$self->{path} = $path;
+		return;
+	}
+
+	return $self->{path};
+}
+
 # for read-only access of old .rev_db formats
 sub unlink_rev_db_symlink {
 	my ($self) = @_;
-- 
1.7.10.4
Previous: Jonathan NiederNext: Jonathan Nieder
Message 4 of 18 in “Make git-svn Use accessors for paths and urls”
  1. Michael G. SchwernJul 27, 2012
  2. 1/5 Make Git::SVN use accessors internally for path.Michael G. Schwern, Jul 27, 2012
  3. Jonathan NiederSep 17, 2012
  4. 1/5 Git::SVN: introduce path accessorJonathan Nieder, Sep 17, 2012
  5. 2/5 Git::SVN: use accessor to read pathJonathan Nieder, Sep 17, 2012
  6. 3/5 Git::SVN: use accessor to write pathJonathan Nieder, Sep 17, 2012
  7. 4/5 Git::SVN::_new: use accessor to write path fieldJonathan Nieder, Sep 17, 2012
  8. 5/5 Git::SVN: rename private path fieldJonathan Nieder, Sep 17, 2012
  9. Junio C HamanoSep 18, 2012
  10. Eric WongSep 18, 2012
  11. 2/5 Make Git::SVN use an accessor for URLs internally.Michael G. Schwern, Jul 27, 2012
  12. 3/5 Make Git::SVN::Ra use an accessor for URLsMichael G. Schwern, Jul 27, 2012
  13. 4/5 Change the rest of the code to use Git::SVN->path instead of the hash directly.Michael G. Schwern, Jul 27, 2012
  14. 5/5 Change the rest of the code to use the Git::SVN and Git::SVN::Ra url accessors.Michael G. Schwern, Jul 27, 2012
  15. Eric WongJul 28, 2012
  16. Jonathan NiederJul 28, 2012
  17. Michael G SchwernJul 28, 2012
  18. Jonathan NiederJul 28, 2012

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.