Example #1
0
        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");
        }
Example #2
0
        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();
        }