fetch.type git & GitHub submodules (was: [133168] trunk/dports/sysutils)
Mojca Miklavec
mojca at macports.org
Wed Mar 4 01:10:34 PST 2015
On Mon, Mar 2, 2015 at 11:37 AM, Rainer Müller wrote:
> On 2015-03-02 10:40, Clemens Lang wrote:
>>
>> FWIW, the textmate2 Portfile has the same problem, and I've just used
>>
>> fetch.type git
>> post-fetch {
>> system -W ${worksrcpath} "${git.cmd} submodule update --init"
>> }
>>
>> to deal with it (which the github PortGroup does not support either, as far as I
>> can see).
>
> The downside of fetch.type git is that it cannot be mirrored and
> therefore might cause problems behind proxies. Downloads may take
> longer on larger repos as clone gets the whole history. It also does
> not support checksums (although git inherently does that).
But those are all just limitations of MacPorts (the lack of
functionality in MacPorts) that could be fixed/implemented.
I see no reason (other than the lack of time or motivation in skilled
developers and lack of skill in those with time & motivation) why the
script taking care of mirroring the sources couldn't create a stable
archive (.tar.xz) from any given tag or commit in a git repository and
put that file on mirrors. Users could then easily fetch that file only
(no need to do a git checkout), verify checksums and clean the build
tree (without having to worry about the need to re-fetch everything).
Checksums and the need to download history would no longer be an issue then.
I wouldn't completely dismiss the idea of using git yet.
Mojca
Some of my old comments:
http://trac.macports.org/ticket/16373#comment:8
http://trac.macports.org/ticket/16373#comment:11
More information about the macports-dev
mailing list