Merging Branches

As you know, usually branches are used to work on some separate parts of site. So, when work is finished, you need to add all your changes into the Master branch and publish the new project version. In Flamingo Control Panel, you can merge your branch into Master, merge into Master and delete your branch, or update your branch from Master.

In case somebody is working on a branch you want to merge or update and/or Master branch in Flamingo IDE, you will be notified about this and will not be able to perform the selected action until all users finish their work in the IDE. Flamingo multi-user developmen feature will help you communicate with these people and complete the action you are going to perform quickly.

When any of these actions is in progress, users cannot open any branch influenced by it in Flamingo IDE, and the Open in IDE button that corresponds to these branches disappears.

Merge into Master

You can use this action to add your changes into the Master branch. This action should be performed when some part of the work is finished and updates are ready to be published on the live site:

  1. On the Project List page, open the needed project by clicking on it.
  2. Go to the Branches page.
  1. Near the branch you need to merge, select the Merge into Master action in the action list.
  1. In the confirmation dialogue that appeared click OK.

The merging process will be initiated, if any conflicts are encountered, you will be asked to resolve them and try again. This process takes some time, and Control Panel updates branch status correspondingly to the action that is being performed. Note that users cannot work with branches influenced by the process in Flamingo IDE during it. After branches are merged, the status of your branch will be set to Merged into Master.

Merge into Master and Delete

You can use this action to add changes you’ve made in your branch to the Master branch and delete your branch afterwards. This action is handy to save one step (deleting unnecessary branch), if you know that your work is finished and branch will not be used in future:

  1. On the Project List page, open the needed project by clicking on it.
  2. Go to the Branches page.
  1. Near the branch you need to merge and delete, select the Merge into Master and Delete action in the action list.
  1. In the confirmation dialogue that appeared click OK.

At first your branch is merged into Master and then deleted. The merging process will be initiated, if any conflicts are encountered, you will be asked to resolve them and try again. After merging is finished, unnecessary branch is deleted. This process takes some time, and Control Panel updates branch statuses correspondingly to the actions that are being performed. Note that users cannot work with branches influenced by the process in Flamingo IDE during it.

Note

Branches are deleted permanently and this action cannot be restored.

Update from Master

You can use this action to add changes that were performed in the Master branch to your branch. You usually do this to check if your version of the site and live version do not conflict. It’s recommended to do such updates regularly (especially if the child branch lifetime is quite long) so that if any conflicts occur, they would be resolved in time and solution would be easier to find. To update your branch from Master, you should:

  1. On the Project List page, open the needed project by clicking on it.
  2. Go to the Branches page.
  1. Near the branch you need to update, select the Update from Master action in the action list.

The merging process will be initiated, if any conflicts are encountered, you will be asked to resolve them and try again. This process takes some time, and Control Panel updates branch status correspondingly to the action that is being performed. Note that users cannot work with branches influenced by the process in Flamingo IDE during it.

Note

Flamingo does its best to avoid conflicts that may occur when many people are working on the same site simultaneously. That’s why it will automatically suggest you actions on the Branches page of Control Panel. For example, if you have made some changes to a child branch, the system will suggest the Merge into Master action, and if you have not updated your branch form Master for a long time, it will suggest the Update form Master action.