Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/monodevelop.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJavier Suárez Ruiz <javiersuarezruiz@hotmail.com>2019-02-14 19:04:25 +0300
committerJavier Suárez Ruiz <javiersuarezruiz@hotmail.com>2019-02-14 19:04:25 +0300
commite8d767b1498637e010a65dd4cabbbeed268006f5 (patch)
treea4c266472be971f7e88130f3025c39586466a88d
parent5c50aaa0adf401054cdcb5eb03edcef9bb487037 (diff)
Start adding more errors feedback in the UI related to VCSfix-4406
-rw-r--r--main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git/GitRepository.cs30
1 files changed, 19 insertions, 11 deletions
diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git/GitRepository.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git/GitRepository.cs
index 77a2f93dea..fe701f2439 100644
--- a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git/GitRepository.cs
+++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/MonoDevelop.VersionControl.Git/GitRepository.cs
@@ -591,19 +591,24 @@ namespace MonoDevelop.VersionControl.Git
// TODO: Make it work differently for submodules.
monitor.BeginTask (GettextCatalog.GetString ("Updating"), 5);
- if (RootRepository.Head.IsTracking) {
- Fetch (monitor, RootRepository.Head.Remote.Name);
+ try {
+ if (RootRepository.Head.IsTracking) {
+ Fetch (monitor, RootRepository.Head.Remote.Name);
- GitUpdateOptions options = GitService.StashUnstashWhenUpdating ? GitUpdateOptions.NormalUpdate : GitUpdateOptions.UpdateSubmodules;
- if (GitService.UseRebaseOptionWhenPulling)
- Rebase (RootRepository.Head.TrackedBranch.FriendlyName, options, monitor);
- else
- Merge (RootRepository.Head.TrackedBranch.FriendlyName, options, monitor);
+ GitUpdateOptions options = GitService.StashUnstashWhenUpdating ? GitUpdateOptions.NormalUpdate : GitUpdateOptions.UpdateSubmodules;
+ if (GitService.UseRebaseOptionWhenPulling)
+ Rebase (RootRepository.Head.TrackedBranch.FriendlyName, options, monitor);
+ else
+ Merge (RootRepository.Head.TrackedBranch.FriendlyName, options, monitor);
- monitor.Step (1);
+ monitor.Step (1);
+ }
+ } catch (Exception ex) {
+ LoggingService.LogError ("Update operation failed", ex);
+ monitor.ReportError (GettextCatalog.GetString ("Update operation failed."), null);
+ } finally {
+ monitor.EndTask ();
}
-
- monitor.EndTask ();
}
static bool HandleAuthenticationException (AuthenticationException e)
@@ -956,7 +961,10 @@ namespace MonoDevelop.VersionControl.Git
RootRepository = new LibGit2Sharp.Repository (RootPath);
RecursivelyCloneSubmodules (RootPath, monitor);
- } finally {
+ } catch(Exception ex) {
+ monitor.ReportError (GettextCatalog.GetString ("Clone failed."), ex);
+ }
+ finally {
monitor.EndTask ();
}
}