[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