|
For me the merge tool does not work reliably. Trying to merge from an integration branch to main-line I cannot select "all changes from left/right" it is always unhighlighted.
Once when trying to merge main line changes into a different integration branch, one file would select properly in the merge tool, but the other did not allow me to select "all changes from left/right" because it was unhighlighted again. Do I need to get SP1 beta to fix these problems?
Clearcase introduced a concept of an integration branch, where a developer does his work in an integration branch and then merges it back into the development line, when he is done with his development effort; I am guessing this not a recommended procedure by VSTS.
(#0 what lends itself to mind is an automatic branch via workitem myproject-wi278 )
This tack makes a big mess in TFS. I made two myproject-IB branches for myself, and then one for a co-worker and was disappointed at the resulting accumulation of branches in the project. I was also disappointed that when working on the branch in Visual Studio, I have no visual indication which branch of the project I am compiling. So I can quickly become confused as to where I am really making the changes.
(#1 need some visual identification as to what branch/main project VS is acting on, and the ability to select the branch, especially when I have not asked for a new local copy, which means I don't want to make a mess on my local drive, I want TFS to manage the mess for me.).
The first time I made a branch I said, ok. Lets NOT check the "create local working copies for the new branch". I make some changes and try to do a diff, and I find there is nothing to diff against at the start of the branch. Having to jump through hoopes to diff an initial change is not good! This should be automatic and easy.
(#2 make initial branch compare happen by default with its branch companion. ).
Then I go make changes in my existing project, expect to checkin my changes into the new branch and I get items I haven't even touched to check or uncheck its box, as well some in the branch and some not in the branch.
(#3 only present those files that have been touched as options to check in)
(#4 It is reasonable to allow me to check in my change into several choices, but present that as a separate option that applies to my modified files.
Then I try to merge this integration branch back into the main line of descent, and I had trouble making this work correctly. I after several what I thought were failed attempts, it magically merged.
Now I am thinking that maybe is a bad thing to uncheck that "create local working copies" box, so I make a new branch without doing that. I go to check this in, and I have merge conflicts. I can't remember what it considering source and target, since that wizard box went away. I right click on the conflict and it would not let me select the right/left pane. Possibly because the previous branch/merge didn't have a local working working copy. (I got it confused it, which was very annoying, so seems not as robust as it should be). If I select "choose target" or "choose source" to fix the conflict, I need a merge window to show me what I am getting.
(#5 Merge tool needs to validate at least the last two radio button selections ("source/target").
(#6 The merge tool must identify what is the source and what is the target, so I can make an intelligent choice as to what to merge).
(#6a If I make a mistake with the merge, I can't reselect from the branch and re-merge the section I made a mistake on. I have to re-edit the branch and then merge again. )
(#7 Need a visual tool for looking the Version history. As I get a lots of checkins and lots of branches (v1, v2, v3, v4, v4.1 etc...) this will get very messy. What you have will not be adequate.
(#8 I really don't want to see the list of all the branches in the project window. This should be a separate function or separate view, probably should be part of the history functionality. I want to be able to select a line or branch to work on and independently select a working directory (ala sourcesafe which worked quite well and most already know how to use).
(#9 Pending changes seem to only happen during a merge, or do they only happen for change-sets checkins? I finally found were you hid the pending changes window, but it doesn't seem to group sets of pending changes, and doesn't always seem to have a way to validate the pending merge visually. I had a bunch of pending changes, only one of which exposed the compare button, but didn't work because the pending change was not attached to a changeset. )
(#10 Doesn't seem to be a built in query to see a list of change sets. How do you do that?)
Probably 8 years ago, when I first started using sourcesafe, I asked to be able to select my colors for the diff tool (background/foregrouned deleted/changed/inserted). They quickly rectified this ommision. Again this basic functionality is missing in TFS. I am crushed. I can't make the line numbers go away, and I can't change the font to a smaller font. For some reason it is bigger than my regular code?
Am I the only one that thinks branching needs some attention?
Scot S. Morgan |