I add some compile class to version control wrongly, now I want to svn:ignore it but when I right click the folder and select Team, the "add to svn:ignore" is greyed out.
So there is always an arterisk logo in that folder, any method to svn:ignore that folder after I have wrongly commit it?
Also, I found there is no svn:delete in subclipse.
I am using VisualSVN server and subclipse.
While you cannot literally delete the folder from SVN as though it had never been, you can do the next best thing.
1. Delete the folder in Eclipse. Do NOT use the command line or Windows explorer to do this, use the Eclipse navigator. It should decorate the folder icon with a red "X", indicating that deletion has been done. This will also schedule any child files and folders for deletion.
2. Commit that deletion to svn. That should make the folder vanish from the Navigator. For good measure, update the working copy FROM svn head after the commit in order to get everything in sync.
3. Manually create the folder using the Eclipse navigator "new folder" function.
4. Use the context menu to tag the new copy of the folder as "svn:ignore". Commit this new folder and again update the project.
An IDE is no substitute for an Intelligent Developer.
Joined: Mar 15, 2008
fail even on step one, the folder will directly delete from eclipse, but not a red mark for delete later when commit, the whole process is shown as attached. I want svn:ignore the folder "war\com.mycompany.project.GWTDesignerFirst"
When you delete and regenerate folders and folder trees, the regenerated folders and files do not have their related .svn folders and files (metadata), which are needed to process the svn delete transaction properly. Among other things, svn not only has to delete the top-level folder, but also all its children from the archive.
That is why you have to do an "svn update" before deleting the folder you want to remove from svn. For best results, do a filesystem delete of the generated folder, an "svn update" to pull the svn copy of the folder (and its children), then an svn delete to remove it from the svn archive. Or, more correctly, from the archive head, since no trustworthy version control system would allow you to literally delete stuff from history. But that's all you need anyway.
Once you've pulled the archive copy of the folder and used svn delete on it, you can regenerate the folder, mark the regenerated folder (which won't have svn metadata) as svn:ignore, then commit that operation.