Jump to content

Merging branches - which is Source and which is Destination?


Gardenfiend Games

Recommended Posts

I'm a bit confused by what is considered the Source and what is considered the Destination in regards to conflicts.

When I do a normal push to the same branch and have a conflict, the Source is what's on the branch, and the Destination is my local stuff with my changes.

But just now I merged from a side branch back to the Main branch, and had a conflict - I selected to keep the Source thinking it was the Main branch's version of the file. However, it applied the file from my side branch.

Could someone explain when/why it is called Source versus Destination, so that I understand whats going on regardless of where/how I am pushing or merging? Thanks!

Link to comment
Share on other sites

Hi,

Maybe the inconsistency you mention comes from the case that you made the merges from (Your active changeset is part of the branch) different branches.

You should check the following link in which we explain the different types of conflicts and how the naming convention goes in those cases:
https://www.plasticscm.com/mergemachine

Does this helps with your questions?


Regards,
Rafael.
Unity Plastic SCM Support Team

Link to comment
Share on other sites

  • 4 weeks later...

Rafael's link has all the info, see especially the section "Merge types".

In short, "destination" is ALWAYS the...well, the destination(-branch) of your merge, the branch you are merging TO.

This doesn't necessarily have to be your current workspace!

  • With the "old"/standard merge function "Merge from this branch...", "destination" *is* your current branch (including all Pending Changes).
  • With the newer feature "Merge from this branch to...", you can merge from any branch to any other, and neither needs to be your current branch. Again, the branch you are merging TO is the "destination".
  • Like 1
Link to comment
Share on other sites

  • 5 months later...
On 3/2/2022 at 1:19 PM, Rafael said:

Hi,

Maybe the inconsistency you mention comes from the case that you made the merges from (Your active changeset is part of the branch) different branches.

You should check the following link in which we explain the different types of conflicts and how the naming convention goes in those cases:
https://www.plasticscm.com/mergemachine

Does this helps with your questions?


Regards,
Rafael.
Unity Plastic SCM Support Team

You're seriously blaming a user for the problems caused by a poorly designed system.

If you don't use the terminology a normal person would use, you're going to keep causing these problems for countless users.

Instead of telling someone how bad they screwed up, how about asking them what kind of prompt they'd expect to see, and run that by the product team?

I'm only here because I'm just as confused by this weird program that I was forced into adopting, and it—not its users—needs a lot of improvement.

Link to comment
Share on other sites

  • 3 weeks later...

Hey @CliftonB,

I don't think my colleague intended to cast blame on the user, but nonetheless your feedback is valid. So I appreciate you sharing it.

We do understand that Plastic SCM and the terminology used can be a steep learning curve, especially for users effected by the Collaborate deprecation, and we plan to make "quality of life" improvements such as this in the coming months. If I'm not mistaken, we have already added further labels to address this very problem. If you would like to learn more about the 3-way merge system that Plastic SCM uses, then please see here.

Hope this helps!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...