public CommonResult CreateBranch(CreateBranchInfo createBranchInfo) { var success = true; foreach (var module in createBranchInfo.Modules) { _logInfo("Creating branch for module " + module.ShortCaption + "..."); var result = CreateBranch(module, createBranchInfo); if (!result.Success) success = false; } if (createBranchInfo.ParentName != "master") { _userOptions.BranchLinks.AddBranchLink(createBranchInfo.BranchName, createBranchInfo.ParentName); } _logInfo("Refreshing projects..."); if (createBranchInfo.CreateRemoteBranch) { foreach (var module in createBranchInfo.Modules) { CurrentGitProjectList.RefreshModulesByUrl(module.RemoteUrl); } } return success ? new CommonResult() : new CommonResult("Error during branch creation. Please see logs"); }
private CommonResult CreateBranch(GitModuleInfo module, CreateBranchInfo createBranchInfo) { if (CurrentProjectIsEmpty()) return new CommonResult("Current project is empty"); //module.Refresh(); if (module.BranchExists(createBranchInfo.BranchName)) { return new CommonResult("Branch " + createBranchInfo.BranchName + " already exists"); } if (!module.CreateLocalBranch(createBranchInfo.BranchName, createBranchInfo.ParentName)) { return new CommonResult("Error during local branch creation. Please see logs"); } //module.RefreshBranches(); //module.RefreshStatus(); //if (createBranchInfo.CreateRemoteBranch) //{ // var createRemoteResult = module.CreateRemoteBranch(createBranchInfo.BranchName); // if (createRemoteResult != GitPushResult.Success) // { // return new CommonResult("Error during remote branch creation. Please see logs"); // } //} return new CommonResult(); }