Muddle and weld - how to use muddle with weldΒΆ
Muddle’s normal workflow involves having one checkout per package. But sometimes, particularly in complex systems with limited sharing, you will want to store all your software in a single git repository so that bug fixes that cross packages are easier to track.
Under these circumstances you can use a tool called weld, written by some of the same people who wrote muddle - http://code.google.com/p/weld .
Weld is essentially an automated tool for managing vendor branches in git.
Muddle provides some limited facilities to allow the git repositories created by weld (known as welds) to be built using muddle.
If you are interested in using weld, now is a good time to go and read the documentation that comes with weld.
It does this by registering a special version control system called weld, which is always up to date. In future, muddle may well provide the ability to generate weld specifications from its build description or vice versa but for now, the build description and the weld specification are separate entities.
To use muddle with weld:
- Check out the weld as usual using git, into say,
mydir
. - Create a .muddle directory using
cd mydir; muddle init weld+ssh://some/origin builds/01.py
- assuming that your builds are inmydir/src/builds
and that you want to use build description01.py
- Use muddle as normal
You will be unable to use the muddle revision control commands
(muddle push
, muddle pull
etc.); this is in keeping with the
weld idiom that you should use git commands to accomplish version
control in welds and just use weld for vendor branch management.