> For the complete documentation index, see [llms.txt](https://beyondcompare.gitbook.io/project/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://beyondcompare.gitbook.io/project/git/merging-two-or-three-directories.md).

# Why merge three folders?

The only three way folder feature in Beyond Compare is FolderMerge (FolderCompare is limited to two folders). &#x20;

The center folder has a specific purpose: BC assumes it is authoritative and ancestral to the other two folders.  When there is a conflict, BC uses this precedence and some simple logic rules to make assumptions on which things you want to keep during the merge. If you know Git, this is some of how Git handles merge conflicts.  &#x20;

To get started with a three way merge, *drag* your three folders with the mouse into two or three panes.

![](/files/-LXtTISJ_IXr3Vv7bscq)

Please note that you cannot edit in the top three panes!  You are only supposed to be pressing arrow buttons:  "take the left line", "take another left line", "take the middle line".  Typing? No! Just pressing arrows. &#x20;

Also note: this feature is not available in Beyond Compare *Standard Edition*.

Why is there there a (optional) middle folder? *If* we put a third folder in the middle we are defining it as the old musty, deprecated directory and other two as living newer directories.  That way, if we get confused during our merge, we can get clarity by knowing this: the more any folders or files resemble the musty directory, the less desirable they are.  Distance from this directory becomes a good thing in choosing what to keep during the merge.&#x20;

![](/files/-LXtTXtofp2BhUYH5k06)

&#x20;In a workflow like the one shown above, we would be trying to merge **4** and **5** to make **6**.  When automatically evaluating what to keep, Beyond Compare will deprecate things in **4** or **5** if they resemble **1.**  Why? Because resembling **1** is a sign that you are old and outmoded. &#x20;

Instructions:
