Commit to multiple repositories (via externals) at once

22 views
Skip to first unread message

Daniel Sahlberg

unread,
Mar 21, 2025, 7:12:06 AMMar 21
to TortoiseSVN-dev
Hi,

We have a design pattern where our customer repos pull in some directories from other repositories (much like the layout of TortoiseSVN's own repository).

We sometimes makes changes that affect both repos. We'd like to commit this "at once" from the Commit dialog. I understand this is not possible in Subversion itself (svn_client_commit6 will not accept paths coming from different repos). I'm investigating if it would be possible to change TortoiseSVN to do several calls to svn_client_commit(). It would probably mean changing the way CCommitDlg returns the pathlist (so CommitCommand::Execute() can figure out if a path is an external) and doing several calls to SVN::Commit()), but it seems doable.

This will of course generate several separate commits, but it is how we do it today although we have to navigate to the external directory and commit manually (keeping track of the commit msg etc).

Before starting to code, I'd like to check the general feedback on the above plan. I'll do the coding in a separate branch to avoid fouling /trunk and then get consensus before merging back to trunk.

Kind regards,
Daniel

Stefan

unread,
Mar 24, 2025, 2:10:12 PMMar 24
to TortoiseSVN-dev
It's definitely doable. The commit dialog already shows changed files in externals, but of course right now they're not checkable.

Daniel Sahlberg

unread,
Apr 2, 2025, 3:44:54 AMApr 2
to TortoiseSVN-dev
I've created a branch "multi-commit" to try to explore this idea. Development is done on spare cycles so it might be a while before any progress.
/Daniel
Reply all
Reply to author
Forward
0 new messages