internal Repository(Uri url, string branch = "master") { _url = url; Branch = branch; _revisionParser = new RevisionParser(url); _updateBackgroundWorker = new BackgroundWorker(); _updateBackgroundWorker.DoWork += DownloadBackgroundWorker_DoWork; _updateBackgroundWorker.ProgressChanged += UpdateBackgroundWorker_ProgressChanged; _updateBackgroundWorker.WorkerReportsProgress = true; foreach (var dir in Directory.GetDirectories(Paths.RepositoriesPath) .Select(Path.GetFileName) .Where(dir => dir.StartsWith(Developer, StringComparison.InvariantCultureIgnoreCase))) { LocalRevision = dir.Split('-')[2]; } }