Пример #1
0
        private void InitialiseTabDefaultPullBehaviors(string preselectLocal = null)
        {
            var heads = Module.GetRefs(false, true);

            RemoteRepositoryCombo.Sorted        = false;
            RemoteRepositoryCombo.DataSource    = new[] { new GitRemote() }.Union(UserGitRemotes).ToList();
            RemoteRepositoryCombo.DisplayMember = nameof(GitRemote.Name);

            RemoteBranches.AutoGenerateColumns = false;
            RemoteBranches.SelectionChanged   -= RemoteBranchesSelectionChanged;
            RemoteBranches.DataError          += RemoteBranchesDataError;
            RemoteBranches.DataSource          = heads;
            RemoteBranches.ClearSelection();
            RemoteBranches.SelectionChanged += RemoteBranchesSelectionChanged;
            var preselectLocalRow = RemoteBranches.Rows.Cast <DataGridViewRow>().
                                    FirstOrDefault(r => r.DataBoundItem is IGitRef gitRef ? gitRef.LocalName == preselectLocal : false);

            if (preselectLocalRow != null)
            {
                preselectLocalRow.Selected = true;
            }
            else if (RemoteBranches.Rows.Count > 0)
            {
                RemoteBranches.Rows[0].Selected = true;
            }
        }
Пример #2
0
 public bool HasRemoteBranch(string branch)
 {
     if (RemoteBranches == null)
     {
         RemoteBranches = GetRemoteBranches();
     }
     return(RemoteBranches.Any(b => b.Name == branch));
 }
Пример #3
0
 public string RemoteCommitHashAtBranch(string branch)
 {
     if (RemoteBranches == null)
     {
         RemoteBranches = GetRemoteBranches();
     }
     return(RemoteBranches.First(b => b.Name == branch).CommitHash);
 }
Пример #4
0
 public override string ToString()
 {// Local: 'master' merges onto master
     return(string.Format(
                "Local '{0}' {1}s {2} '{3}'",
                LocalBranch,
                Config.ToString().ToLowerInvariant(),
                Config == MergeAction.Merge ? "with" : "onto",
                RemoteBranches.Count() == 1 ? RemoteBranches.First() : "(many)"));
 }
Пример #5
0
        private void InitialiseTabBehaviors()
        {
            var heads = Module.GetRefs(false, true);

            RemoteRepositoryCombo.Sorted        = false;
            RemoteRepositoryCombo.DataSource    = new[] { new GitRemote() }.Union(_gitRemoteController.Remotes).ToList();
            RemoteRepositoryCombo.DisplayMember = "Name";

            RemoteBranches.AutoGenerateColumns = false;
            RemoteBranches.SelectionChanged   -= RemoteBranchesSelectionChanged;
            RemoteBranches.DataError          += RemoteBranchesDataError;
            RemoteBranches.DataSource          = heads;
            RemoteBranches.ClearSelection();
            RemoteBranches.SelectionChanged += RemoteBranchesSelectionChanged;

            if (RemoteBranches.Rows.Count > 0)
            {
                RemoteBranches.Rows[0].Selected = true;
            }
        }