void (@NotNull WCInfo info, @NotNull WorkingCopyInfoPanel infoPanel) { VirtualFile root = info.getRootInfo().getVirtualFile(); if (!checkRoot(root, message("action.name.merge.from"))) return; SelectBranchPopup.showForBranchRoot(myProject, root, (project, configuration, branchUrl, revision) -> { try { Url workingCopyUrlInSelectedBranch = getCorrespondingUrlInOtherBranch(configuration, info.getUrl(), branchUrl); MergeContext mergeContext = new MergeContext(getVcs(), workingCopyUrlInSelectedBranch, info, branchUrl.getTail(), root); new QuickMerge(mergeContext, new QuickMergeInteractionImpl(mergeContext)).execute(); } catch (SvnBindException e) { AbstractVcsHelper.getInstance(myProject).showError(e, message("dialog.title.merge.from.branch", branchUrl.getTail())); } }, message("popup.title.select.branch"), infoPanel); }