[MacPorts] #16373: svn git and hg fetch type should maintain a persistent working copy

MacPorts noreply at macports.org
Tue Mar 18 08:40:59 PDT 2014


#16373: svn git and hg fetch type should maintain a persistent working copy
---------------------------+--------------------------------
  Reporter:  ryandesign@…  |      Owner:  macports-tickets@…
      Type:  enhancement   |     Status:  new
  Priority:  Normal        |  Milestone:  MacPorts Future
 Component:  base          |    Version:  1.7.0
Resolution:                |   Keywords:  performance fetch
      Port:                |
---------------------------+--------------------------------

Comment (by cal@…):

 Keeping a (bare repo) clone of the whole thing would speed up fetching
 even after a port is updated, though. Packaging tarballs wouldn't. Also we
 can't easily avoid the git dependency because by the time the fetch phase
 is started we wouldn't know whether our mirrors already had a generated
 tarball or we'd have to fetch from git.

 I guess getting this implemented using bare clones wouldn't be so hard
 after all. For git, you'd have to
  - generate a unique identifier from the repository URL (e.g. using a hash
 function)
  - test whether $cachedir/$identifier is a valid git repository
  - create a bare clone if it isn't, run git fetch if it is
  - export the version/revision/tag you need from $cachedir/$identifier
 into $worksrcdir.

 I think that's actually easier to implement than getting the mirroring
 stuff you propose into the scripts that update our distfile mirrors.

-- 
Ticket URL: <https://trac.macports.org/ticket/16373#comment:13>
MacPorts <http://www.macports.org/>
Ports system for OS X


More information about the macports-tickets mailing list