When you and other developers work in the same module and change the same elements, the OutSystems Platform cannot automatically merge the work for you. This is because the Platform finds changes in the same elements and cannot choose which one to publish. It's called a conflict and you have to resolve it manually, choosing which changes to publish.
Because conflicts happen when developers work on the same elements in the same module at the same time, it is advisable to plan the work ahead to distribute it well and avoid overlapped work and, consequently, conflicts.
The image above illustrates a situation of conflicts:
In a conflict you have to choose between publishing your changes or the changes of the other developer. Normally, you keep the other developer's changes because you know what you did and you can replicate it. However, you can always discuss it with the team and decide which changes to keep.
As an example, imagine a Contacts application with two developers working on it: Matt Jones and John Baker.
The application has the following:
Each developer has to do the following:
Each one opens the module locally in development environment and starts working:
On the left hand side John has his changes and on the right hand side changes published by Matt Jones.
The changes highlighted in red are changes with conflicts. Both John and Matt have changed the screen to list contacts.
The changes highlighted in light blue mean that they are changes without conflicts. They and are automatically selected for merging.
John double-clicks on the Contact_List screen to look into it.
Using the next difference button, John browses through all differences on the screen.
He realizes that Matt has changed the contacts list screen a lot.
He decides to keep Matt's changes and then add his own afterwards.
About Working in Teams | Merge and Publish | Compare and Merge | Elements Checkable for Merge