private async Task CommitAsync() { if (Stage.Count == 0 || string.IsNullOrWhiteSpace(Message)) { return; } BarVisibility = Visibility.Visible; var commit = await _gitManager.GitCommitAsync(_message, _repositoryId, _stage); if (commit.Item1 == null) { MessageBox.Show(commit.Item2); BarVisibility = Visibility.Hidden; return; } if (IsPush) { await _gitManager.GitPushAsync(_repositoryId); } else { ColorPush = Brushes.Red; } Application.Current.Dispatcher.Invoke((System.Action) delegate { Commits.Insert(0, commit.Item1); }); Stage.Clear(); Message = null; BarVisibility = Visibility.Hidden; }