On 11 Apr 2014, at 18:55, Mike Duigou <mike.dui...@oracle.com> wrote:
> Have you looked at using rebase? I have not, in any detail. > I've been using > > sh common/bin/hgforest.sh pull > sh common/bin/hgforest.sh rebase > sh common/bin/hgforest.sh update > > rather than get_source.sh as it allows me to skip the qpop/qpush steps. Yes, this may work. I was just looking for a single command to active this. Maybe this combination could be baked into get_source.sh if patch repositories exist, and we can verify the existence of the rebase extension ( rather than my previous proposal ) ? -Chris. > > Mike > > On Apr 11 2014, at 07:58 , Chris Hegarty <chris.hega...@oracle.com> wrote: > >> Anyone using MQ for their daily development will know about this, forgetting >> to qpop before sync'ing up. It would be nice it get_source would pop and >> push patches ( only if you are using MQ ) automatically. If you do not have >> patch repos, then there is no change. >> >> diff --git a/get_source.sh b/get_source.sh >> --- a/get_source.sh >> +++ b/get_source.sh >> @@ -28,6 +28,21 @@ >> # Get clones of all nested repositories >> sh ./common/bin/hgforest.sh clone "$@" || exit 1 >> >> +patchdirs=`ls -d ./.hg/patches ./*/.hg/patches ./*/*/.hg/patches \ >> + ./*/*/*/.hg/patches ./*/*/*/*/.hg/patches 2>/dev/null` >> + >> +# Pop all patches, if any, before updating >> +if [ "${patchdirs}" != "" ] ; then >> + echo "Found queue repository, qpop." >> + sh ./common/bin/hgforest.sh qpop -a || exit 1 >> +fi >> + >> # Update all existing repositories to the latest sources >> -sh ./common/bin/hgforest.sh pull -u >> +sh ./common/bin/hgforest.sh pull -u || exit 1 >> >> +# Push all patches, if any, after updating >> +if [ "${patchdirs}" != "" ] ; then >> + echo "Found queue repository, qpush." >> + sh ./common/bin/hgforest.sh qpush -a >> +fi >> + >> >> -Chris. >