svn commit: r312087 - in head/devel/svn2git: . files

David Naylor dbn at FreeBSD.org
Tue Feb 12 04:20:01 UTC 2013


Author: dbn
Date: Tue Feb 12 04:19:59 2013
New Revision: 312087
URL: http://svnweb.freebsd.org/changeset/ports/312087

Log:
  Update devel/svn2git to 1.0.8.
  
  This update enables determinist exports of subversion repositories, and
  optionally includes the patches required for exporting FreeBSD's subversion
  repositories.
  
  Beware, though, that using the patches for FreeBSD exporting could break other
  exports.
  
  Approved by:	eadler (mentor) and uqs (FreeBSD's svn2git patch author)

Added:
  head/devel/svn2git/files/freebsd-export-patch   (contents, props changed)
  head/devel/svn2git/files/patch-src__svn.cpp   (contents, props changed)
Modified:
  head/devel/svn2git/Makefile
  head/devel/svn2git/distinfo
  head/devel/svn2git/files/patch-src__src.pro   (contents, props changed)

Modified: head/devel/svn2git/Makefile
==============================================================================
--- head/devel/svn2git/Makefile	Tue Feb 12 02:24:36 2013	(r312086)
+++ head/devel/svn2git/Makefile	Tue Feb 12 04:19:59 2013	(r312087)
@@ -2,9 +2,9 @@
 # $FreeBSD$
 
 PORTNAME=	svn2git
-DISTVERSION=	1.0.5
+DISTVERSION=	1.0.8
 CATEGORIES=	devel kde
-MASTER_SITES=	http://cloud.github.com/downloads/DragonSA/${PORTNAME}/
+MASTER_SITES=	LOCAL/dbn/svn2git
 
 MAINTAINER=	dbn at FreeBSD.org
 COMMENT=	Imports svn repositories into git
@@ -20,8 +20,17 @@ USE_XZ=		yes
 USE_QT4=	corelib qmake_build
 MAKE_JOBS_SAFE=	yes
 
+OPTIONS_DEFINE=	FREEBSD_REPO
+FREEBSD_REPO_DESC=	FreeBSD-repo only mode
+
 PLIST_FILES=	bin/svn2git
 
+.include <bsd.port.options.mk>
+
+.if ${PORT_OPTIONS:MFREEBSD_REPO}
+EXTRA_PATCHES=	${PATCHDIR}/freebsd-export-patch
+.endif
+
 post-patch:
 	${REINPLACE_CMD} "s|/usr/local|${LOCALBASE}|" ${WRKSRC}/src/src.pro
 

Modified: head/devel/svn2git/distinfo
==============================================================================
--- head/devel/svn2git/distinfo	Tue Feb 12 02:24:36 2013	(r312086)
+++ head/devel/svn2git/distinfo	Tue Feb 12 04:19:59 2013	(r312087)
@@ -1,2 +1,2 @@
-SHA256 (svn2git-1.0.5.tar.xz) = 8118a2ee50767b76122fdea630ae92159af982f2352c1796aafeeba480025913
-SIZE (svn2git-1.0.5.tar.xz) = 23104
+SHA256 (svn2git-1.0.8.tar.xz) = 536504f40d49d460921eb0dd6fb5021ea70bdacf1dd4bca9ff596628c6c0baa2
+SIZE (svn2git-1.0.8.tar.xz) = 23548

Added: head/devel/svn2git/files/freebsd-export-patch
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/svn2git/files/freebsd-export-patch	Tue Feb 12 04:19:59 2013	(r312087)
@@ -0,0 +1,20 @@
+diff --git a/src/svn.cpp b/src/svn.cpp
+index 1aadce9..3d359bb 100644
+--- src/svn.cpp
++++ src/svn.cpp
+@@ -800,8 +800,13 @@ int SvnRevision::exportInternal(const char *key, const svn_fs_path_change_t *cha
+     // merge points.  This heuristic is fairly useful for tracking
+     // changes across directory re-organizations and wholesale branch
+     // imports.
+-    //
+-    if (path_from != NULL && prevrepository == repository && prevbranch != branch) {
++    // NOTE(uqs): HACK ALERT! Only merge between head, projects, and user
++    // branches for the FreeBSD repositories. Never merge into stable or
++    // releng, as we only ever cherry-pick changes to those branches.
++    // FIXME: Needs to move into the ruleset ...
++    if (path_from != NULL && prevrepository == repository && prevbranch != branch &&
++            (branch.startsWith("master") || branch.startsWith("head") ||
++             branch.startsWith("projects") || branch.startsWith("user"))) {
+         if(ruledebug)
+             qDebug() << "copy from branch" << prevbranch << "to branch" << branch << "@rev" << rev_from;
+         txn->noteCopyFromBranch (prevbranch, rev_from);

Modified: head/devel/svn2git/files/patch-src__src.pro
==============================================================================
--- head/devel/svn2git/files/patch-src__src.pro	Tue Feb 12 02:24:36 2013	(r312086)
+++ head/devel/svn2git/files/patch-src__src.pro	Tue Feb 12 04:19:59 2013	(r312087)
@@ -14,7 +14,7 @@ index da6d40d..5749202 100644
  exists(local-config.pri):include(local-config.pri)
  
 -VERSION = $$system(git --no-pager show --pretty=oneline --no-notes | head -1 | cut -b-40)
-+VERSION = 1.0.3
++VERSION = 1.0.8
      !isEmpty(VERSION){
        VERSION = $${VERSION}
      }

Added: head/devel/svn2git/files/patch-src__svn.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/svn2git/files/patch-src__svn.cpp	Tue Feb 12 04:19:59 2013	(r312087)
@@ -0,0 +1,12 @@
+diff --git a/src/svn.cpp b/src/svn.cpp
+index 1aadce9..3d359bb 100644
+--- src/svn.cpp
+@@ -896,7 +901,7 @@ int SvnRevision::recurse(const char *path, const svn_fs_path_change_t *change,
+                                rev_from, changes, current, *match, matchRules, dirpool) == EXIT_FAILURE)
+                 return EXIT_FAILURE;
+         } else {
+-            if (dirent->kind == svn_node_dir) {
++            if (i.value() == svn_node_dir) {
+                 qDebug() << current << "rev" << revnum
+                          << "did not match any rules; auto-recursing";
+                 if (recurse(entry, change, entryFrom.isNull() ? 0 : entryFrom.constData(),


More information about the svn-ports-head mailing list