How to specify commandline options to git for the fetch phase of a port?

Daniel J. Luke dluke at geeklair.net
Wed Nov 12 07:26:18 PST 2014


> On Nov 12, 2014, at 5:45 AM, William Gallafent <william at gallaf.net> wrote:
> According to https://guide.macports.org/#reference.phases.fetch.git I am able to set the url and tag to fetch … but for a particular port I'm playing with I also need to add the “--recursive” option in order to get the submodules in place. Alternatively, I would need to run “git submodule update --init --recursive” immediately after the fetch.
> 
> Any thoughts or advice?

First, be sure you actually need to use git to fetch the source (it's /much/ better to pull a tarball than to pull source from git/mercurial/svn/cvs/whatever).

I'm not sure if there's a hook for you to pass in additional git args, but even if there isn't - it should be relatively trivial for youu to add a 'post-fetch' phase to do whatever you want to have happen right after the fetch.

Note that the github portgroup says this:

# Some projects' tag- or commit-based distfiles will not contain all the
# necessary files, if the project uses git submodules. If available, use a
# distfile from "releases" or "downloads" instead, as described above. If the
# project does not provide those, encourage the project's developers to provide
# releases. Until they do, fetch from git instead of from a distfile, and add a
# post-fetch block to fetch the submodules:
#
#   fetch.type          git
#
#   post-fetch {
#       system -W ${worksrcpath} "git submodule update --init"
#   }

--
Daniel J. Luke                                                                   
+========================================================+                        
| *---------------- dluke at geeklair.net ----------------* |                          
| *-------------- http://www.geeklair.net -------------* |                          
+========================================================+                        
|   Opinions expressed are mine and do not necessarily   |                          
|          reflect the opinions of my employer.          |                          
+========================================================+






More information about the macports-dev mailing list