Can I make 'one-shot' mr actions?

2015-08-21 Thread Evade Flow
Greetings! I recently discovered mr, and—for me—it's the 'missing link' for
dealing with projects comprised of a dozen or more 'micro repos'. I really
appreciate how easy it is to create custom actions that target *all*
repositories. I'm at a point now where I'd like to implement some
convenience functions for various repo-juggling tasks that only target a
subset of repositories—or no repositories at all. I'm basically looking for
a way to include arbitrary shell functions in my .mrconfig and invoke them
the same as any other action, but with arguments specifying which repo(s)
they should target. What I'm trying to achieve is something like this:

$ mr hide rtt-gameclock bugfix-reboot
mr hide: /home/acme/projects/rtt/../.repos/rtt-gameclock
Rename /home/acme/projects/rtt/../.repos/rtt-gameclock to
rtt-gameclock.bugfix-reboot [y/N]? y
Renamed rtt-gameclock to rtt-gameclock.bugfix-reboot!

$ mr unhide
1. rtt-event-server.wip-replay
2. rtt-gameclock.bugfix-reboot
3. rtt-vds.wip-pcl-overlay

$ mr unhide 2
Rename /home/acme/projects/rtt/../.repos/rtt-gameclock.bugfix-reboot to
rtt-gameclock [y/N]? y
Renamed rtt-gameclock.bugfix-reboot to rtt-gameclock!


Basically, I am (among other things) trying to make it easy for my team to
'shelve' work by temporarily renaming a working copy and re-cloning it.
We're using Mercurial, and several team members prefer to use fresh clones
as 'topic branches' rather than trying to make sense of hg bookmarks. But
this is just one such task that I'd like to have mr wrap.

Obviously, I could just  create a separate Bash script for these functions,
and perhaps that's what I'll wind up doing; but I like the consistency of
having all repo management commands be spelled mr something, and it would
streamline the setup instructions for developers, too, if everything were
wrapped up in the .mrconfig file.

Is there some way I can coax mr into not running an action just once,
instead of once per repository?

Any insight much appreciated—thanks!
___
vcs-home mailing list
vcs-home@lists.madduck.net
http://lists.madduck.net/listinfo/vcs-home

Re: Can I make 'one-shot' mr actions?

2015-08-21 Thread Evade Flow
Doh—I had a bonus 'not' in the most important sentence in my post. In case
it wasn't clear from the context, I meant to ask:

Is there some way I can coax mr into running an action just once, instead
of once per repository?

On Fri, Aug 21, 2015 at 9:26 AM, Evade Flow evadef...@gmail.com wrote:

 Greetings! I recently discovered mr, and—for me—it's the 'missing link'
 for dealing with projects comprised of a dozen or more 'micro repos'. I
 really appreciate how easy it is to create custom actions that target
 *all* repositories. I'm at a point now where I'd like to implement some
 convenience functions for various repo-juggling tasks that only target a
 subset of repositories—or no repositories at all. I'm basically looking for
 a way to include arbitrary shell functions in my .mrconfig and invoke
 them the same as any other action, but with arguments specifying which
 repo(s) they should target. What I'm trying to achieve is something like
 this:

 $ mr hide rtt-gameclock bugfix-reboot
 mr hide: /home/acme/projects/rtt/../.repos/rtt-gameclock
 Rename /home/acme/projects/rtt/../.repos/rtt-gameclock to
 rtt-gameclock.bugfix-reboot [y/N]? y
 Renamed rtt-gameclock to rtt-gameclock.bugfix-reboot!

 $ mr unhide
 1. rtt-event-server.wip-replay
 2. rtt-gameclock.bugfix-reboot
 3. rtt-vds.wip-pcl-overlay

 $ mr unhide 2
 Rename /home/acme/projects/rtt/../.repos/rtt-gameclock.bugfix-reboot to
 rtt-gameclock [y/N]? y
 Renamed rtt-gameclock.bugfix-reboot to rtt-gameclock!


 Basically, I am (among other things) trying to make it easy for my team to
 'shelve' work by temporarily renaming a working copy and re-cloning it.
 We're using Mercurial, and several team members prefer to use fresh clones
 as 'topic branches' rather than trying to make sense of hg bookmarks. But
 this is just one such task that I'd like to have mr wrap.

 Obviously, I could just  create a separate Bash script for these
 functions, and perhaps that's what I'll wind up doing; but I like the
 consistency of having all repo management commands be spelled mr
 something, and it would streamline the setup instructions for
 developers, too, if everything were wrapped up in the .mrconfig file.

 Is there some way I can coax mr into not running an action just once,
 instead of once per repository?

 Any insight much appreciated—thanks!

___
vcs-home mailing list
vcs-home@lists.madduck.net
http://lists.madduck.net/listinfo/vcs-home