I'm a big fan of using read-only submodules, usually to the upstream
project but sometimes to my own fork. The use of submodules makes
getting changes in from upstream trivial. The commands you need to
know are:

    git submodule add
    git submodule sync
    git submodule update --init --recursive

The first command adds a submodule to a working repository, the latter
ensure that all modules are initialized and updated. They are
especially necessary for fresh repo clones.

The area where git's submodule concept really falls down is
git-archive's lack of support for recursive descent into modules. Save
yourself a ton of frustration and archive with rsync. Something like:

    git checkout FOOCOMMIT
    git submodule sync && git submodule update --init --recursive
    rsync -vzrP --delete --exclude='.git' /path/to/repo/ /path/to/archive/

The Forge seems to encourage the tarball style but, no offense to the
Puppet team, GitHub's where all the action's at, in my very humble
opinion.

On Sun, Feb 26, 2012 at 1:17 PM, Jonathan Proulx <j...@jonproulx.com> wrote:
> Hi All,
>
> I'm building out my first puppet install and obviously want to
> leverage modules from the forge.  Since I'm using git as the VCS for
> my puppet configs and most community modules are hosted on github it
> seems the obvious thing to do is to use either git submodules or
> subtree merging, but I haven't used those features in the past so it's
> not clear to me the added features are worth the complexity over
> pulling a tarball of the module into my local git.  It does seem
> contributing back would be easier with  one of the git options ....
>
> anyway, what methods are you using and how do you like them?
>
> Thanks,
> -Jon
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Puppet Users" group.
> To post to this group, send email to puppet-users@googlegroups.com.
> To unsubscribe from this group, send email to 
> puppet-users+unsubscr...@googlegroups.com.
> For more options, visit this group at 
> http://groups.google.com/group/puppet-users?hl=en.
>



-- 
Brian L. Troutwine

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en.

Reply via email to