Hg-publishall is a mercurial extension which allows you to push simultaneously to multiple repositories, in a single command.
First, clone the repository, let's say in your home directory:
hg clone ssh://[email protected]/pelletier/hg-publishall ~/hg-publishall
Then add the following to your .hgrc
file in order to activate the extension:
[extensions]
publishall = /Users/thomas/hg-publishall/publishall.py
And voilà!
Add as many paths as you want to your repository/.hg/hgrc file, and when you want to push, use one of the following:
hg pushall
hg pusha
As of r10
you can now pass --new-branch
to the command in order to create remote
branches. Here is an example session:
hg init base
hg init target1
hg init target2
echo -e "[paths]\ntarget1=../target1\ntarget2=../target2" > base/.hg/hgrc
cd base
touch bar
hg commit -A -m "first commit on default"
hg pushall
hg branch newbranch
touch foo
hg commit -A -m "create a new branch"
hg pushall # This fails
hg pushall --new-branch
- Hg-publish plays great with hg-git.
Hg-publishall is licensed under MIT license, so feel free to hack as much as you wish.
The official repository is on Bitbucket, but a mirror is available on GitHub.
Finally, if you find a bug, have a feature request or want to submit a patch, just fill a ticket on the issues tracker.
In order of appearance,
- Thomas Pelletier https://bitbucket.org/pelletier
- Rémy Hubscher https://bitbucket.org/natim
- Thomas R. https://bitbucket.org/glglgl
- Bruno Bord https://bitbucket.org/brunobord