TortoiseProc.exe command line merge regularly asks for cleanup

105 views
Skip to first unread message

Kieren

unread,
May 20, 2024, 8:25:59 PM5/20/24
to TortoiseSVN
For some reason when using the command line merge for some of my repositories it regularly requires a cleanup, sometimes 2 or 3 times before I can get a merge through.

I've then noticed using explorer to do the merge with the same info will go through on the first try - even after it's right after trying with the command line trigger and it asking to be cleaned. So I can only assume it's something to do with this method.

ie, cmd command I'm using for merges:
TortoiseProc.exe /command:merge /path:"%to_path%" /fromurl:%merge_from% /revrange:"%svn_list%" 2

Which for some of my repos works fine, but then others (seems to be the ones with larger files) ask for cleanup almost every time unless done through the explorer right click -> merge method.

I'm aware of the svn environment variable and commands too, but for usability purposes within my team the UI is very helpful.

Cheers,
Kieren

Daniel Sahlberg

unread,
May 21, 2024, 3:17:57 AM5/21/24
to TortoiseSVN
tisdag 21 maj 2024 kl. 02:25:59 UTC+2 skrev Kieren:
For some reason when using the command line merge for some of my repositories it regularly requires a cleanup, sometimes 2 or 3 times before I can get a merge through.

I've then noticed using explorer to do the merge with the same info will go through on the first try - even after it's right after trying with the command line trigger and it asking to be cleaned. So I can only assume it's something to do with this method.

ie, cmd command I'm using for merges:
TortoiseProc.exe /command:merge /path:"%to_path%" /fromurl:%merge_from% /revrange:"%svn_list%" 2

What is the "2" doing at the end of the line? I can't recall it being part of the standard command line.


Which for some of my repos works fine, but then others (seems to be the ones with larger files) ask for cleanup almost every time unless done through the explorer right click -> merge method.

I'm aware of the svn environment variable and commands too, but for usability purposes within my team the UI is very helpful.

Cheers,
Kieren

There are no obvious reasons why a merge using your command should require a cleanup if a merge from the context menu doesn't. If you right click -> merge and then (without completing or closing the merge dialog) check Task manager on the details tab you will find a TortoiseProc.exe process and if you add the Command line column you will see that it is quite similar. The fromurl and revrange only pre-populate the corresponding text boxes in the merge wizard and it shouldn't make a difference to the actual merge if those came from the command line or if you entered them manually.

Kind regards
Daniel



Kieren

unread,
May 23, 2024, 9:17:17 PM5/23/24
to TortoiseSVN
Sorry that "2" was a copy paste fail, it does "/closeonend:2" , so that command all seems fine. 

Checking things further I've found that I can reproduce getting the cleanup error repeatedly when doing cleanups even from explorer, but interestingly I can sometimes get the clean-up error then re-merge without doing a cleanup and it can go through. Is there anything particular you know of that can cause the clean-up error that can fix itself minutes later without me touching anything? Knowing this might help me try avoid it, if not find a way for it to be fixed.

Cheers.

Stefan

unread,
May 24, 2024, 10:08:43 AM5/24/24
to TortoiseSVN
one sure way to get errors that require a cleanup is to have the working copies stored on a network share instead of a local drive.

Kieren

unread,
Jun 3, 2024, 5:22:18 PM6/3/24
to TortoiseSVN

All on local drives. Same problem happening for others using the same checkouts. Some have found setting Status cache to None helps, or sometimes killing the TSVNCache.exe and re-trying.

Kieren

unread,
Jul 3, 2024, 6:52:58 PM7/3/24
to TortoiseSVN
I think I've figured out what might be doing it and how to get around it:

If I open the Merge window and then click Merge too quickly it gives the repo is locked and require cleanup error, but if you open the Merge window then wait a little it goes through fine. Which could explain why we could get the error then re-trying again without a cleanup would work fine.

I assume it's locking the repo for a moment while loading something, and not sure if how we pre-populate the commit list with TortoiseProc adds to that time or not. It's particularly worse on large repositories (talking like 1TB) , but waiting ~5s before clicking Merge seems to stop it from happening there too. Hopefully that info helps.

Cheers.

Kieren

unread,
May 8, 2025, 7:19:45 PMMay 8
to TortoiseSVN
Bumping this as it's still a problem for large checkouts and we're regularly having to retry several times, or sometimes have to sit on the merge window for a minute before trying to merge for it to go through

Cheers.

Reply all
Reply to author
Forward
0 new messages