private void BuildRepository(IRepository repo, ZippedRepo source) { foreach (string name in source.GetBranches()) { var commits = source.GetBranch(name); CherryPickCommits(repo, commits.ToArray(), name); } // TODO (MP) Handle anon branches RecordMerges(repo, source); }
/// <summary> /// Zips the configured repositories. /// </summary> public IRepository Zip() { this.logger.Log("Reading repositories..."); var zippedRepo = new ZippedRepo(this.repositories, this.config); this.logger.Log("Zipping the following branches: " + string.Join(", ", zippedRepo.GetBranches())); this.logger.Log("Initialize target repository..."); IRepository targetRepo = InitTargetRepo(); this.logger.Log("Building target repository..."); BuildRepository(targetRepo, zippedRepo); return(targetRepo); }