Subrepository workflow improvements (part 2)

19 views
Skip to first unread message

KPOP

unread,
Aug 3, 2023, 5:15:40 AM8/3/23
to TortoiseHg Developers
Dear all

This is a continuation on the ideas from https://groups.google.com/g/thg-dev/c/gvzwY8Qe6qo/m/lP1l6BDGDQAJ, where I'm trying to simplify my workflow for features branches in subrepositories. This is my current approach:
  1. Open the repositories that might have changes
  2. "Pull all" to ensure I have everything locally
  3. Copy/paste the feature branch name revset query into each tab (i.e. "branch('re:.*Feature123.*')"), closing those that have no matches
  4. Start reviewing the code on the matching revisions
Having the registry show repositories that match a certain query as I proposed before is impractical: with lots of repositories and groups, this is too expensive and most of the time, a pull is needed to get the branches that need to be reviewed (step 2 above).

So instead I was thinking about an optional toolbar that has an input field for a revset query and buttons to apply that query to all open tabs, that simplifies the manual work of step 3 above. It could also, optionally, close the tabs that have no changes. A quick mock-up could look like this:

query for all opened tabs.png

Any feedback on this idea before I start implementing something like that?

KPOP

Yuya Nishihara

unread,
Aug 3, 2023, 5:40:38 PM8/3/23
to KPOP, thg...@googlegroups.com
On Thu, 3 Aug 2023 02:15:40 -0700 (PDT), KPOP wrote:
> This is a continuation on the ideas from
> https://groups.google.com/g/thg-dev/c/gvzwY8Qe6qo/m/lP1l6BDGDQAJ, where I'm
> trying to simplify my workflow for features branches in subrepositories.
> This is my current approach:
>
> 1. Open the repositories that might have changes
> 2. "Pull all" to ensure I have everything locally
> 3. Copy/paste the feature branch name revset query into each tab (i.e.
> "branch('re:.*Feature123.*')"), closing those that have no matches
> 4. Start reviewing the code on the matching revisions
>
> Having the registry show repositories that match a certain query as I
> proposed before is impractical: with lots of repositories and groups, this
> is too expensive and most of the time, a pull is needed to get the branches
> that need to be reviewed (step 2 above).
>
> So instead I was thinking about an optional toolbar that has an input field
> for a revset query and buttons to apply that query to all open tabs, that
> simplifies the manual work of step 3 above.

Instead of adding new toolbar, maybe we can add a toggle button to keep
all revset queries in sync? Implementation-wise, it wouldn't be much
different than adding new toolbar. Something like adding signal to propagate
setRevisionSet(query) from RepoWidget, and route it at RepoTabWidget.

Matt Harbison

unread,
Aug 6, 2023, 4:50:03 PM8/6/23
to TortoiseHg Developers
I like the idea of some mechanism to apply *all* of the current config to all of the other tabs.  It's a PITA to resize columns on all tabs when thg doesn't exit cleanly, and the settings file is either ignored or deleted on the next launch, and the tabs have to be opened again.

Reply all
Reply to author
Forward
0 new messages