The main reason of constructing branch cuts is find the regions where an inverse exists. In a multi-valued function (a complete misnomer because it acts like a function that produces a unique output and not two outputs), you have the problem where you don't have a bijectivity (i.e. 1-1 which means inverse defined over the whole domain/range pair).
So you create a branch cut that deals with defining separate branches that allow you to restrict the domain for that branch so that an inverse exists. So your branches will be mutually exclusive (i.e. given branch cuts corresponding to a collection of sets Ci then Cx Intersection Cy = empty set).
If your example of the square root, you will have two disjoint branches corresponding to positive and negative values.