Как получить список неподтвержденных файлов от 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);
}