Community
Participate
Working Groups
I am working on a partial branch and need the cvs update -f switch - which asks the update operation to pull the latest version from HEAD if it is not on the branch. This option is available in both WinCVS and Tortoise. Please don't make me use WinCVS anymore! Apart from adding this option for updating, it would be nice to allow the ability to supply switches to a cvs operation. Or enable Eclipse to read from something comparable to .cvsrc so that options not available in Eclipse can still be performed.
I think a better approach here would be to somehow surface the notion of working in a partial branch. In other words, surfacing the -f option itself will probably just confuse user and most likely lead them to use it the wrong way. However, if we could somehow provide the proper UI affordances for working in a partial branch, it may lead users to use it properly. I personally have never worked in a partial branch so I can't really offer much here. Perhaps you could describe the workflow. Better yet, we would be more than happy to accept a patch that adds this workflow. Of course, we would also accept a patch that added the ability to perform an update with a -f. It could be specific on a per update basis or it could be somthing specified when you branch a resource (i.e. the -f would be associated with a project that is branched).
We use partial branches as a way to manage long running projects. Having these type of projects on full branches creates issues with merging from the trunk into the branch to get the latest code so the branch does not get stale because you end up having files on the branch that really should not have been modified - for example, Joe Refactor decides to just reorganize the imports, or even worse, doesn't realize that he's converted all the line endings - and now a file that hasn't had any code changes conflicts on every single line. Working on a partial branch entails branching only the files that your explicitly have modified while working on the branch. So the branch only contains the files that have been branched - the rest of the codebase is the same as on the trunk. So during an update, you want the changes to the files on the branch, but you also want the latest from the trunk - this is the -f option on the update command. I don't think giving the ability to select -f on an update would be too risky - if somebody is working on a full branch, I supposed it would result in new files on the trunk being brought into the branch. But in terms of implementing a workflow, it's really project specific. How one team handles partial branching will be different on how another team does. For example, one factor would be whether or not development is going on on the trunk. If so, you'd only want to do -f at specific times. If not, it's pretty safe to do it all the time (which is my case). I can understand not wanting to give the -f ('if not revision available, get the latest from the head' is how WinCVS puts it) option to the user, in much the same way the -A option is not directly available but the user can choose a version to update to. Two other possibilities are allowing a user to alias an update command like is done in .cvsrc. So upd can be aliased to upd -fdP if desired. Or even making Eclipse configurable to load aliases from a .cvsrc file. Or allowing explicit commands to be added to a command on a one-of basis. In any event, I'm sorry that I don't have the time so make these changes myself and submit them. I was hoping for an enhancement so that my development team could continue using the CVS portion of Eclipse. Thanks for your time.
*** Bug 88667 has been marked as a duplicate of this bug. ***
*** Bug 168359 has been marked as a duplicate of this bug. ***
*** Bug 188123 has been marked as a duplicate of this bug. ***
I've added some basic partial branch support in my own branch of this plugin. It was easy enough to create new context menu items for checkout, checkout as, and update that use -f. Using add and commit as normal works fine, but it is important for the users to be aware that they are working on a partial branch. A real solution would include some concept of partial branches in the underlying model, as I had to use the 'older' update mechanism that avoids the model altogether. Another problem with my current solution is that the synchronization view is partial branch unaware. If I get some free time this summer, I'll try to build something worth submitting.
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet. If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.