Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SVN Status update not updating all projects after switch source branch #178

Open
msi-tl opened this issue May 14, 2021 · 2 comments
Open

Comments

@msi-tl
Copy link

msi-tl commented May 14, 2021

If we do a svn switch from CLI on a workspace with many projects (187 in our case) and start Eclipse after that, Eclipse do a "SVN Status update".
The problem is that not all of the projects are updated successfully and we got a salad of old an new branch URL in project and package explorer for the projects.

svn info on the modules in question shows the correct URL. The Problem seems to be the sync information in the files {workspace}/.metadata/.plugins/org.eclipse.core.resources/.projects/{project.name}/.syncinfo

Team -> refresh/cleanup does the job, but this isn't really a solution for us because this operation needs nearly the same time as switching the branch for all projects within eclipse.

The reason why we use CLI command for switching is simply the time and simpliness.
We working with a script that does the switch, automatically add/remove projects from workspace that where added or removed and create the new branch in svn repo if it does not exists. And all of that just with a single command with one parameter.
It would not be worth to use Eclipse tools to switch the workspace...

This bug happens even with SVNKit v1.10.1.10793 and JavaHL v1.14.0.202005311413 with svn 1.13.0 (r1867053).
We use Linux Ubuntu 20.04 and Linux Mint 20.1.

If we get help to find the bug, we will be happy to help to fix them.

Alternatively, it would also be satisfactory for us if there was a way to execute the command Team -> refresh/cleanup from the CLI.
E.g. like eclipse -noSplash -application org.eclipse.cdt.managedbuilder.core.headlessbuild -import {project.name}

@markphip
Copy link
Contributor

There is no one that really works on this project anymore but if a PR comes in I will do my best to get it reviewed and merged.

This issue first surfaced when SVN changes the working copy format in 1.7 to the single .svn folder in the root of the working copy. After this change, when you update the WC outside of Eclipse we do not get sufficient notifications when you refresh in Eclipse to update the statuses. Even if we did it would likely be a slow process. We added the Team > Refresh option as our "solution" to the problem. Maybe there is a better one but that was what we came up with at the time.

I have absolutely no idea how you would do this from the CLI, but perhaps that could be the contribution you would focus on.

Finally, it has been years since I have looked at this, but I seem to recall we build a pretty nice interface for switching many projects at once via the GUI. You could select them all and use the Switch option and it was multi-project aware. It also supported resource groups in Eclipse workspace. I could also be imagining all of this but I am fairly certain we did this. I know you have a script you want to use, but this could be something else to explore if you are open to doing it via the GUI.

@msi-tl
Copy link
Author

msi-tl commented May 14, 2021

Thanks for your fast response. We know the GUI for switching to another branch and it is really nice.
But there are serveral problems with it, e.g. if you have one or more projects from another branch in your workspace, you have first to switch them all to a single branch to use the Eclipse GUI or if there a new projects on a branch you want to switch to, there is no option to checkout them too or if one or more projects where deleted on the target branch etc. This unflexibility and more little obstacles makes the daily work really annoying.

We would be glad to contribute anything helpful here but we can't invest much time so it would be nice if you can give us a tip where to start on this bug

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants