public GitRepositoryInfo(WorkspacePath localRepositoryPath, string remoteRepositoryUrl, string userName, SecureString password) { if (string.IsNullOrEmpty(localRepositoryPath?.FullPath)) { throw new ArgumentNullException(nameof(localRepositoryPath)); } if (string.IsNullOrEmpty(remoteRepositoryUrl)) { throw new ArgumentNullException(nameof(remoteRepositoryUrl)); } this.localRepositoryPath = PathEx.EnsureTrailingDirectorySeparator(localRepositoryPath.FullPath); this.RemoteRepositoryUrl = remoteRepositoryUrl; this.UserName = userName; this.Password = password; }