Why does Subclipse only work in some Ecliplse workspaces and not others?
I am using Eclipse with Subclipse to do some perl development. The Subversion repository is installed as follows:
- / repos / repos / dev /
- / repository / dev / crontabs
- / repository / dev / crontabs / script1
- / repository / dev / crontabs / script2
- / repo / dev / daemons
- / repository / dev / daemons / script3
- / repository / dev / daemons / script4
- / repository / dev / tools
- / repository / dev / tools / script5
- / repository / dev / tools / script6
On the filesystem, I have the entire / repos / dev tree installed locally in ~ / dev and created three Eclipse workspaces, one each in "~ / dev / crontabs", "~ / dev / demem" and "~ Dev / tools".
This is where things get weird. In daemons and tools workspaces, SVN works correctly. I can't see the .svn directories and I can do all the different SVN stuff (like commit, update, cleanup) in the TEAM dialog. However SVN does not work in the "crontabs" workspace. Svn directories are visible and none of the SVN dialog options are available.
In all directories I can use SVN command line tools and everything works fine.
Here are a few more details.
- Mac OS X 10.5.6
- Eclipse Platform - Version: 3.4.2 - Build ID: M20090211-1700
- SVNKit Library 1.2.2.5405
- SVNKit Client Adapter 1.5.6.1
- Subheading 1.4.8
- EPIC 0.5.46
I tried deleting the deameons.metadata and real.profile files to try to clean it up and start a new workspace, but that didn't work.
Has anyone seen this type of behavior before and / or knows a way to make SVN commands work in all workspaces, not just them?
UPDATE: I should also mention that there are a bunch of other assets in the / dev directory that I don't use Eclipse for. So, I am using the SVN command line tool in combination with the SVN features in Eclipse. Everything was initially checked out with a command line tool and then I just use Eclipse to commit. What throws me off is that it works in two subdirectories, but not in the third, and the command line works 100%.
a source to share
When switching working areas, all settings, etc. from other workspaces are ignored.
Instead of checking out the whole chest and creating 3 workspaces that match your repository structure, create 3 workspaces and check out the relevant parts of your repository as projects for each workspace.
a source to share
When you create a new project and import files into it, Eclipse does not assume that the project is versioned. You must explicitly state this using the Project Team -> Share Project ...
Once you select the correct directory, Eclipse will tell you that the project is already in use at that location, but activate the SVN commands in Eclipse anyway.
a source to share
I'm not sure if I fully comply with all of this. And the Subclipse plugin is not as polished as the CVS plugin. But if you copy the project to the workspace and include the Subversion context (.svn folders) as Bemose pointed out, it doesn't make sense for Subclipse.
In theory, when you use Team / Share and get a warning message, you can give the go-ahead and it will destroy existing .svn files and build new ones that are correct. If you're lucky, it even works. It works with CVS, but as I said, Subclipse can be a problem.
Your best bet is to validate projects in your workspaces using the Eclipse subversion perspective and the Validate as Eclipse Project option.
If you absolutely need to create your project directories from the command line, use the Subversion export command rather than the checkout command. The export excludes the .svn directories, so Eclipse can do its job without interruption. However, you will need to do the / Share command in order to link the exported project to the subversion repository.
a source to share