C # SharpSvn: объединить конкретные ревизии из одной ветви в другую - PullRequest
0 голосов
/ 25 сентября 2018

У меня есть список ревизий, которые я хотел бы объединить, но я также хотел бы исключить все остальные ревизии, которых нет в списке:

List<Revisions> revisions = new List<Revisions>();
revisions.Add(new Revisions { IssueNumber = "ISSUE-1", Revision = 41757 });
revisions.Add(new Revisions { IssueNumber = "ISSUE-2", Revision = 42145 });
//revisions.Add(new Revisions { IssueNumber = "ISSUE-3", Revision = 42192});
revisions.Add(new Revisions { IssueNumber = "ISSUE-4", Revision = 42891 });

Проблема, с которой я столкнулся, заключается в том, чточто я могу объединить только текущую рабочую версию каталога до последней версии в списке.Он по-прежнему включает закомментированную ревизию в диапазоне.

SvnMergeArgs mergeArgs = new SvnMergeArgs();
mergeArgs.Depth = SvnDepth.Infinity;
SvnUriTarget MyTarget = new SvnUriTarget(new Uri(trunk.Url));
foreach (var item in revisions) 
{
    SvnRevisionRange svnRange = new SvnRevisionRange(statuses.LastChangeRevision, item.Revision);
    _svnClient.Merge(_workingdir, MyTarget, svnRange, mergeArgs);
}

Есть ли способ исключить любую другую ревизию в диапазоне, которого нет в списке?

1 Ответ

0 голосов
/ 01 декабря 2018

Вы можете попробовать следующий подход.Создайте объект SvnRevisionRange от "item.Revision - 1" до item.Revision.Это будет включать в себя только одну ревизию в Merge, т.е. item.Revision.

SvnRevisionRange svnRange = new SvnRevisionRange(item.Revision - 1, item.Revision);

...