mirror of
https://github.com/sourcegit-scm/sourcegit.git
synced 2024-10-31 13:03:20 -07:00
fix<Remote>: do NOT check remote name if only edit it's URL
This commit is contained in:
parent
f476d758ca
commit
8050d5a2ab
2 changed files with 7 additions and 3 deletions
|
@ -31,6 +31,7 @@ namespace SourceGit.Helpers {
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class RemoteNameRule : ValidationRule {
|
public class RemoteNameRule : ValidationRule {
|
||||||
public Git.Repository Repo { get; set; }
|
public Git.Repository Repo { get; set; }
|
||||||
|
public Git.Remote Old { get; set; }
|
||||||
|
|
||||||
public override ValidationResult Validate(object value, CultureInfo cultureInfo) {
|
public override ValidationResult Validate(object value, CultureInfo cultureInfo) {
|
||||||
var regex = new Regex(@"^[\w\-\.]+$");
|
var regex = new Regex(@"^[\w\-\.]+$");
|
||||||
|
@ -40,11 +41,13 @@ namespace SourceGit.Helpers {
|
||||||
if (string.IsNullOrEmpty(name)) return new ValidationResult(false, "Remote name can NOT be null");
|
if (string.IsNullOrEmpty(name)) return new ValidationResult(false, "Remote name can NOT be null");
|
||||||
if (!regex.IsMatch(name)) return new ValidationResult(false, $"Bad name for remote. Regex: ^[\\w\\-\\.]+$");
|
if (!regex.IsMatch(name)) return new ValidationResult(false, $"Bad name for remote. Regex: ^[\\w\\-\\.]+$");
|
||||||
|
|
||||||
|
if (Old == null || name != Old.Name) {
|
||||||
foreach (var t in remotes) {
|
foreach (var t in remotes) {
|
||||||
if (t.Name == name) {
|
if (t.Name == name) {
|
||||||
return new ValidationResult(false, $"Remote '{name}' already exists");
|
return new ValidationResult(false, $"Remote '{name}' already exists");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return ValidationResult.ValidResult;
|
return ValidationResult.ValidResult;
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,6 +30,7 @@ namespace SourceGit.UI {
|
||||||
|
|
||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
nameValidator.Repo = repo;
|
nameValidator.Repo = repo;
|
||||||
|
nameValidator.Old = remote;
|
||||||
|
|
||||||
if (remote != null) {
|
if (remote != null) {
|
||||||
title.Content = "Edit Remote";
|
title.Content = "Edit Remote";
|
||||||
|
|
Loading…
Reference in a new issue