SVN Switch with relocate in Eclipse - eclipse

My question can be claimed to be an extension/similar to the question posted here.
basically, I need to do the same functionality using Eclipse plugin Subclipse. Subclipse has a functionality to "Switch branch/tag/revision", however, this is limited as it treats the new url as a repository and tries to compare them. I only wish to change the URL.
any ideas!

From SVN Repository Exploring perspective right click on your project repository and choose Relocate.. from contextual menu:
It will bring up a confirmation windows showing you active projects which will be affected by relocation.

In more recent versions of Eclipse/Subversive (which don't have the Relocate option) you can simply click Location Properties instead and change the URL. It will warn you that "The attached projects will be relocated because the repository root URL differs from the previously entered one." This is what you want!

I had the similar issue on Eclipse Luna 4.4.2 64 bit version. Initially I've relocated the project on the command line and Eclipse failed to recognize the relocation change. Alternatively I've tried to delete and re-import the projects, but sadly this approach failed to work out as well. Then sorted it out this way;
Closed all the projects,
Opened the SVN Repository Exploring perspective,
Right clicked on the repository >> Location properties,
In the properties pane, I've changed the url and in the below I choose "Use the repository URL as the label" clicked on finish,
Switched back to the Java perspective and reopened the projects.
After this alteration Eclipse stopped giving such errors and I was able to see the new root address of each project on the right side of the name

I found that if the projects that are related with the SVN you are trying to relocate are open in Eclipse, the operation fails with the following error in the 'SVN Console':
switch --relocate http://old.scm.com/svn/APP http://new.scm.com/svn/APP .../webapp
svn: E155019: Cannot relocate '...\webapp' as it is not the root of a working copy
svn: E155019: Cannot relocate '...\webapp' as it is not the root of a working copy
The solution was to close all the projects (Project Explorer -> right click on the project -> Close Project) and only after that, do the URL relocation in the SVN window (SVN Repositories window -> right click on the URL of the old SVN -> Relocate).
Notice that that the box 'Projects that will be relocated:' on the following screen is empty. Before it showed all the open projects in Eclipse IDE.
This was they only way I got it to succeed.
Using Eclipse Kepler Service Release 2, with Subclipse 1.10.10.

Related

Two SVN Repository Perspectives in Eclipse

For Android development I'm using Eclipse Indigo and Subclipse 1.6.18.
I happened to notice today that when I go to Window > Open Perspective I see two SVN Repository Perspectives. One says "SVN Repository Exploring" and the other says the same thing but inside angle brackets, i.e,
"<SVN Repository Exploring>".
The first one brings up a blank window; the angle-bracket one brings up a window with my repositories in an upper tab and "task repositories" in a lower tab.
I also noticed that if I go to Help > Install New Software and show what's already installed,and uninstall all the Subclipse components, and restart Eclipse, these two SVN perspectives still exist. They don't work anymore because of missing SVN components but they're still there.
So where do these two SVN repository perspectives come from and why one with, and one without, angle-brackets? Thanks in advance.
You can have two if you have both Subclipse and Subversive installed. However, note that your workspace also will save and remember perspectives, particularly if you customize and save them. Try starting Eclipse with a new workspace and see if they go away.

Red arrow icon in subclipse

My computer set-up:
-eclipse with aptana studio 3 plugin, plugin development tools and subclipse
and i have 2 projects under version control. i managed to copy the files from one project to the second since i don't know how to merge two projects yet. when i tried to copy the js folder from one project to the other, this happens:
notice the red arrow. now, i thought it was nothing. i committed the project and left for work. when i went to the office and updated my copy of the project, i found out that the js folder was not there. when i checked the repository, the js folder was not there at all. i was sure it was there when i left home.
found this link which is a thread that gives an heads-up on subversion icons but this red outward pointing icon isnt there in the list.
what do they mean?
Using Eclipse Mars.1 Release (4.5.1) and SVN 1.8.10. My icons reverted back to normal after running Team > Cleanup.
The arrow indicates switched
http://www.eclipse.org/subversive/documentation/teamSupport/svn_label_decor.php
I see there is already a solution in the comments above, just thought id share my solution which seemed easier , simply
Right click on project > Team > Disconnect (from repository)
Right click on project > Team > Re-connect (to repository)
Problem solved!
NOTE: After re-connecting had to commit all changes in project, seemed scary at first but simply updated version number. (I am always a little nervous when synchronizing with the repo)
NOTE: Using subversion SVN plugin in eclipse

How to enable Subversive (Eclipse Plugin) for a project

I am using subversive (an eclipse plugin) to connect connect to an SVN repository. I have only been using it for several weeks but it has been great.
Whenever I create a new project everything works great (see the left side of the image), the project automatically hooks itself up to svn. When I open a workspace that I had before I installed subversive it does not use the plugin (see the right side of the image).
I have tried numerous things to try to enable the plugin:
I looked under all the options under window -> preferences (especially the team preferences
I looked under all of the properties under the project (right click the project -> select properties)
I deleted the workspace folder and created a new one (and re-imported my project)
I looked at the .project file and compared it to a projec that has the plugin enabled but could not see anything relevant there
How can I enable the plugin? The only way that I have found that works is to checkout the project in a fresh empty folder and then open it in eclipse. I am trying to avoid this since it will take an hour or so to redownload.
Right-click on the project, choose Team - Share project... It should then detect the .svn directories already present and propose you to reuse the SVN information stored inside.

How to change subversion settings in xcode?

I've had subversion running in Xcode for a while. The integration of subversion has always hung by a thread. However my subversion server has changed its ip address ... and my xcode project still tries to look up the source on the old ip.
I have changed the ip of the subversion server via the SCM menu in xcode ... however these changes don't seem to effect the project.
Anyone got any idea how I change the subversion ip in the project?
Cheers
Rich
I've run into a similar issue when relocating a Subversion repository would be completely ignored by XCode.
Here's a list of steps I've taken in order to force Xcode to update the repository path in my project:
Open up Terminal and go to your XCode project directory:
$ cd /path/to/your/project
Switch the Subversion working copy to the new URL (in the example below I also changed the SVN protocol but this is irrelevant):
$ svn switch --relocate svn://old_path svn+ssh://new_path
Fire up XCode, close your project's window and open up Organizer (⇧⌘2)
Go to the Projects tab, locate your project in the list on the left, right-click it and click Remove from Organizer...
Close XCode and open up your .xcodeproj XCode project file again.
You should now see an updated SVN path under the Location heading under Source Control in the File inspector (the Utilities panel).
If you go to Organizer, you should also see the project back in its place under the Projects tab and a new item under the Repositories tab.
The environment I've tested this solution in: Mac OS X Mountain Lion + XCode 4.4.1
You need to use the --relocate option for the svn switch command if you are just changing hostnames or ip addresses.
So, something like this:
svn sw --relocate svn://brian#123.123.123.123/mypath svn://brian#122.122.122.122/mypath
It's not Xcode, it's svn itself that still looks to the old reposotory. Try firing up a terminal, and cd'ing into the project directory. There use the switch svn command:
svn switch NewURL
then refresh or close/open the Xcode project.
Try creating a new SCM repository and setting your project to the new one, and if that works, you can safely delete the old one.
I had similar problems when the dns name for my svn server changed (but keeping the same IP)
svn sw --relocate worked for me (from terminal on a mac). After the change, go to "Refresh entire project" from the SCM menu in xcode.
Good idea to do an svn info first though to check your repo URL. On my first attempt I entered the wrong FROM URL and the svn sw --relocate just does nothing, with no error reported.
The confusing thing in xcode was the the SCM - repositories browser worked fine after I updated the svn settings in xcode preferences, but my project was not fixed until after the --relocate business.

How do you make eclipse use an existing svn working copy?

I've got a working copy checked out with svn; furthermore, I've created a new project in Eclipse that has the root of the working copy as the project's location. I want to be able to do stuff like compare versions from Eclipse. I have Subclipse 1.4.8, but that doesn't seem to give me what I want. Am I doing something wrong?
i have an svn working copy that also is a project in eclipse. after installing the subclipse plugin i had the same problem, the working copy was not recognized as such.
i just managed by chance to get it recognized as an svn working copy by renaming the project in question and then renaming it back to its old name. not very nice, but it did the trick :-)
There is an option when creating a new project, to use an existing source directory:
New project/ new Java Project / Create project from existing source.
Use that, tell it where your source lives, and it should automatically detect if it's a SVN working copy.
I guess this is not possible with Subclipse as it's given in its documentation that, you can only import an existing svn-managed folder under one condition, according to the doc:
"The only requirement is that your
working copy has to also be a valid
Eclipse project."
So, if you have a working copy that is not a complete eclipse project, Subclipse will not connect it to SVN.
You can right click on the root node of your project and select: Team / Share project
Then you choose SVN, let the default settings and it should work fine!
I am answering this after a long time of the question being asked. I ended up here because I was facing the same problem.
My solution was to create an empty .svn folder at the root folder of the project (in the latest version of svn client tortoise all meta-data is at the root folder). Then did an eclipse refresh and voila it did the trick. I am running subclipse core - 1.8.4.
One step that seemed to work for me, that no one has explicitly mentioned yet: I closed and then re-opened the project. I tried the "rename" trick, above, and that didn't work, but perhaps the poster of that answer also closed the project - they didn't detail exactly what steps they went thru to rename it. (I found you don't have to close the project to rename it, but perhaps they did.)
< /rob>
In my case, I couldn't use an existing copy because I checked out the code using a newer version of Subversion on the command-line and Subclipse 1.4 couldn't recognize it. Upgrading and going through the improved "Share Project" menu resolved the problem.
I got this tip from the forums here:
http://subclipse.tigris.org/ds/viewMessage.do?dsForumId=1047&dsMessageId=2380064
I had the same issue and here are the details of the fix.
My Eclipse is "Helios Service Release 1".
I had an SVN checkout on my filesystem, I went to New Java Project, unchecked Use default location, chose the location, went to next step, chose the source folder and said Finish.
The project came up with no disk icon on it. As per few forum posts, right-clicked on the project, went to Team > Share Project, chose SVN, clicked Next, and the option was only to share the files to the SVN Repository for the first time.
I said Cancel, and the option is to make changes to the SVN plug-in settings. Went to Window menu, chose Preferences, browsed Team> SVN. Chose the SVN Connector tab, changed the SVNKit 1.2.3 to SVNKit 1.3.5 and said OK.
Then, right clicked on the project, said Team> SVN, on the next screen, chose the option Use Project Settings and clicked Finish. The disk button came to the project and the SVN URL got displayed on it.
Add the repository to your list of repositories in subclipse by choosing Window->Show View->Other... and choose SVN->SVN Repositories. Put in all the necessary info to connect to the repository.
Next, right click the repository and choose "checkout". If the project doesn't already have an eclipse .project file, you can create a new project from the source. If it already has a .project file, it will import that .project and use that as your eclipse project locally.
It will definitively not work if you use a different version of svn to checkout, that the one that is supported by Eclipse. I had this problem as I used svn 1.6 to checkout but I had an older eclipse version that had only 1.5. Subclipse has its own build-in svn client (Actually, in two flavors if I am not mistaken).
Check that the subclipse version matches the svn client that you used to checkout. You can check the plugin version number for subclipse (Help -> About -> Click on subversion logo) and match it against svn --version
This worked for me:
1) Go to the 'SVN Repository Exploring' perspective and add a folder somewhere above your working copy
2) Close and open the Eclipse projects.
This should then be enough to get them recognized by Subclipse.
I have encountered a similar situation were existing projects would not get associated with the Subversive plugin. Unfortunately, none of the previous suggestions helped (renaming projects etc.). What has helped is removing projects from Eclipse by deleting them -- just the projects from Package Explorer and not the actual directories and files on disc (the deletion prompt has a special checkbox for that, which is unchecked by default) -- and reimporting the deleted projects as existing projects back.
Of course, as mentioned in some of the answers here, the relevant SVN repositories need to be registered with Eclipse before reimporting the projects. Otherwise, there would no repositories to re-associate the projects with.
When you open a versioned project (i.e., a project in SVN working copy) in Eclipse, that was never previously used with Subclipse, you need to perform these steps:
Right-click the project in Project Explorer.
Select Team | Share Project.
At this point Subclipse will tell you that "The project is already configured with SVN repository information". Click Next.
Subclipse automatically recognizes this project as versioned and all the features of the SVN plug-in should become available.