Workspace.PendEdit не проверяет файлы - PullRequest
2 голосов
/ 02 июня 2010

Я использую TFS 2010 SDK для программной проверки изменений в файлах в TFS 2010. Документация на TFS 2010 SDK в лучшем случае скудна. Когда я вызываю метод workspace.pendedit (), передавая массив файлов, которые я хочу пометить как ожидающие редактирования, на самом деле ничего не проверяется. Поэтому, когда я вызываю workspace.checkin (), передавая workspace.getpendingchanges и некоторые комментарии, я получаю исключение, что должна быть хотя бы одна вещь с ожидающими изменениями (что должно быть тем, что я передал в pendedit). Есть мысли о том, почему приложение не помечает файлы как ожидающие редактирования в рабочей области?

Ответы [ 2 ]

3 голосов
/ 02 июня 2010

Убедитесь, что вы делаете все в правильном порядке, чтобы TFS знала, что файл изменился. Вы должны:

  1. Сначала получите файл из рабочей области.
  2. Ожидание редактирования
  3. Внести изменения в файл
  4. Проверка в рабочем пространстве.

Пример:

    GetStatus status = workspace.Get(new GetRequest(migrationPath, RecursionType.None, 
                                             VersionSpec.Latest),GetOptions.Overwrite);
    workspace.PendEdit(migrationPath);

    checkInAuthor = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
2 голосов
/ 04 июня 2010

Оказалось, что, хотя я добавил файлы и проверил их, казалось, что рабочее пространство не распознает, что файлы были там, и в результате я должен был выполнить Get () доPendEdit ()

...