I have a file-based TortoiseSVN repo that requires the files to be kept in sync if I need to work across multiple machines (rare... but courtesy of a pandemic, you guessed it).
The inevitable happens: two distinct machines (PC1, PC2) each commit changes, and are assigned the same revision number due to an undetected sync backlog on PC2. Subsequently, PC2 clears the sync backlog, but ends up with a muddled view of the repo:
- PC1 revision history ("Show Log") shows the affected revision has the author and revision comment from PC1, but also files committed from PC2.
PC2 seems totally fine, so the changes submitted on PC1 are re-submitted there. This filters through to PC1 where the revision history shows the latest revision correctly, but the history entry for the previous revision remains muddled as described above.
It seems like a reasonable idea to delete/rename the affected project, and do a fresh checkout. That results in:
- Checksum mismatch for
- Try a 'Cleanup'. If that doesn't work you need to do a fresh checkout
- Cleanup fails; fresh checkout consistently leads to checksum mismatch
So I'm stuck. I guess that something in the .svn folder needs deleting. How can I find out what that something is and remove it without losing either history or affecting other projects from the same repo?
(There are multiple projects/branches in the repo root, and a single .svn file spanning all checkouts from it as far as I can tell. I'm running TortoiseSVN 1.10.5 on Windows 10... and further complicating things by encrypting all the source in the repo using Cryptomator.org)