private void OnSwitchBranchCommand(object sender, EventArgs e)
        {
            if (sccService.CurrentTracker == null || sccService.CurrentTracker.Repository == null)
            {
                return;
            }

            var branchPicker = new BranchPicker(
                sccService.CurrentTracker.Repository,
                sccService.CurrentTracker.RepositoryGraph.Refs);

            branchPicker.Show();
        }
        private void OnSwitchBranchCommand(object sender, EventArgs e)
        {
            if (sccService.CurrentTracker == null || !sccService.CurrentTracker.IsGit)
            {
                return;
            }
            //TODO
            var branchPicker = new BranchPicker(sccService.CurrentTracker);
            var results      = branchPicker.Show();

            ThreadHelper.JoinableTaskFactory.Run(async delegate
            {
                await GetToolWindowPane <PendingChangesToolWindow>().OnSwitchCommand(results);
            });
        }
        protected override async Task OnBranchCommandSelection(string command)
        {
            if (string.Equals("Create Branch", command, StringComparison.OrdinalIgnoreCase))
            {
                var branchPicker = new BranchPicker(CurrentRepository);
                var branchInfo   = branchPicker.Show();

                var switchResult = await GitCommandWrappers.SwitchCommand(branchInfo);

                if (!switchResult.Succeeded)
                {
                    MessageBox.Show(switchResult.ErrorMessage, "Error", MessageBoxButton.OK, MessageBoxImage.Exclamation);
                }
            }
        }