2008-10-17 4 views
3

Как я могу указать, что я ВСЕГДА хочу, чтобы локальный файл заменял копию сервера, даже если копия TFS новее?Принудительная проверка файла TFS с помощью C#


if (pendingChanges.GetUpperBound(0)>-1) 
    ChangeSetNumber = workspace.CheckIn(pendingChanges, filename); 

Я могу видеть из intelisense, что я могу указать checkinoptions в качестве параметра метода CheckIN, я просто не могу найти то, что мне нужно поставить, чтобы иметь всегда проверять и игнорировать любой конфликт, я мог бы придумайте.

Заранее спасибо.
EDIT: Я нашел команду TF RESOLVE «item»/auto: AcceptYours/recursive. Итак, я думаю, что мой пересмотренный вопрос будет заключаться в программировании equlivant для переключателя/auto: AcceptYours?
NecroEDIT: процесс конфликтов, прежде чем делать фиксирование

 
Conflict[] conflicts = workspace.QueryConflicts(new string[] { TFSProject }, true); 

foreach (Conflict conflict in conflicts) 
{ 
    conflict.Resolution = Resolution.AcceptTheirs; 
    workspace.ResolveConflict(conflict); 
} 
+0

Разве вы не должны слить, а не заменить? – 2008-10-25 07:16:05

ответ

1

возвраты атомарны - либо все они успеха или все они терпят неудачу. Если есть какие-либо конфликты, которые необходимо устранить перед проверкой, операция проверки приведет к возникновению исключения. (Документация)

Вы должны оценить checkin для конфликтов, а затем разрешить CheckinConflicts методом Workspace.ResolveConflict. ResolveConflict ожидает CheckinConflict, а результат EvaluateCheckin (который является CheckinEvaluationResult) включает CheckinConflicts.

This page может помочь.

Примечание: проверка не связана с тем, что вы просите.

Надеюсь, это поможет.