Как получить список неподтвержденных файлов от SharpSVN

Используя SharpSvn, как я могу получить список файлов, которые должны быть зафиксированы (список, который вы увидите, если щелкнуть правой кнопкой мыши папку с tortoisesvn и нажать коммит)

Я попробовал это:

        SharpSvn.SvnClient client = new SharpSvn.SvnClient();
        Collection<SvnListChangeListEventArgs> list;
        bool result = client.GetChangeList(@"C:\MyProjectPath", out list);

Но кажется, что он возвращает список всех файлов в проекте, а не только измененные.

2 ответа

Решение

Функция, которую вы используете, предназначена для функции списка изменений. Чтобы увидеть, какие файлы изменены, используйте GetStatus или жеStatus звонки. В этом случае вы хотите проверить LocalContentStatus а также LocalPropertyStatus

Сандер прав, вот более полный пример перечисления измененных файлов:

var statusArgs = new SvnStatusArgs();
statusArgs.Depth = SvnDepth.Infinity;
statusArgs.RetrieveAllEntries = true;
Collection<SvnStatusEventArgs> statuses;
svnClient.GetStatus(@"C:\SVN\stuff\", statusArgs, out statuses);
foreach (SvnStatusEventArgs statusEventArgs in statuses)
{
   if (statusEventArgs.LocalContentStatus == SvnStatus.Modified)
      Console.WriteLine("Modified file: " + statusEventArgs.Path);
}
Другие вопросы по тегам