sbrassard Posted November 26, 2012 Report Share Posted November 26, 2012 PlasticMen, We have found this problem in both v 4.1.10.366 and v4.1.10.372. Here are the steps: 1. Current workspace is [branch A] and has pending changes 2. Create a child branch [branch B] off of [Main] At this point everything appears to be correct. 3. Checkin workspace changes 'to a different branch' 4. Select an existing branch [branch B] [branch B] now displays as a child of [branch A] instead of [Main] I have a screencast of the branch explorer, but it may contain confidential information. I can send it to a codice software email address for review. In the meantime, I will also forward this to Pablo. Link to comment Share on other sites More sharing options...
manu Posted November 27, 2012 Report Share Posted November 27, 2012 Hello Stephen, thanks for the detailed information in both forum and email This is the regular behavior, I'll explain why. The check-in changes to a different branch feature, as you know, needs an empty branch. We force that requirement to avoid merge operations and go straight forward to a clean solution, store the changes in an auxiliary place. Why the branch base changes when you finally place the changes into a new changeset in that branch? Due to the branch base in Plastic SCM 4 is the parent of the first changeset in the branch. So, when we create the new changeset in the empty branch, the branch base flips to this new changeset parent. What happens if we force to keep the base that the branch was having when it was empty? that we would need to run a merge operation. And as I said before, we do this to avoid a merge operation, later, of course you are able to merge that new changeset wherever you want to. We prefer to do it in this way to create a clean changeset with the workspace which you can use later to perform merge or cherrypick operation, and as you can see the branch is still a main child branch by the name convention, only the branch base has change. Link to comment Share on other sites More sharing options...
sbrassard Posted November 27, 2012 Author Report Share Posted November 27, 2012 Thanks for the reply. We found [branch B] only contains items from [Main] plus the Checkin workspace changes 'to a different branch' changeset. It doesn't contain any of the changes in [branch A]. This is why we raised the flag here and wanted to bring this to your attention. It doesn't make much sense to me, or I am not understanding the reasoning behind this behavior. I think we would at least expect to see [branch A]'s data also on [branch B], but all that's there is [Main] and our item we checked in. From the screenshots, We create a branch, then it displays in the BranchExplorer. Then we checkin our current pending changes from the current branch we are still on into the new branch. Then after we complete that, the BranchExplorer displays the new branch is a child of our current branch and the new branch only contains items from the Main branch + our checked in change. If the new branch is a child of [branch A], should it also have the changes from [branch A]? Thanks [Edit - click the screenshots in sequence using their attached names ..0,1,2] Link to comment Share on other sites More sharing options...
manu Posted November 27, 2012 Report Share Posted November 27, 2012 Can you please match the [branch A] and [branch B] names with the 'main', 'main/Child Branch Test' and the third one that is displayed in the captures? Thanks! Link to comment Share on other sites More sharing options...
fstarker Posted November 27, 2012 Report Share Posted November 27, 2012 Here are updated screenshots with "[MAIN]", "[branch A]", and "[branch B]" labels. Link to comment Share on other sites More sharing options...
manu Posted November 27, 2012 Report Share Posted November 27, 2012 Thanks for the update, it's weird. Can we get connected to review the differences? I can send you a GoToMeeting request. Please tell me your time zone. Link to comment Share on other sites More sharing options...
sbrassard Posted November 27, 2012 Author Report Share Posted November 27, 2012 Email sent Link to comment Share on other sites More sharing options...
manu Posted November 28, 2012 Report Share Posted November 28, 2012 Just to update. the differences were correct, the issue was just misunderstanding at the time you want to compare two branches, right now we need to select one branch -> "Diff..." -> "Diff with other branch". We all in codice think that it's not very clear and we should implement the "select one branch" "select another" -> Diff, just like the changesets way. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.