2

TFS 2010 SDKを使用して、ファイルの編集をプログラムでTFS2010にチェックインしています。TFS2010SDKのドキュメントはせいぜいまばらです。保留中の編集があるとマークしたいファイルの配列を渡すメソッドworkspace.pendedit()を呼び出すと、実際には何もチェックアウトされません。したがって、workspace.checkin()を呼び出してworkspace.getpendingchangesといくつかのコメントを渡すと、保留中の変更があるものが少なくとも1つ必要であるという例外が発生します(これは、pendeditに渡したものである必要があります)。アプリがファイルをワークスペースで保留中の編集があるものとしてマークしない理由について何か考えはありますか?

4

2 に答える 2

3

ファイルが変更されたことを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;
于 2010-06-02T15:06:34.473 に答える
2

ファイルを追加してチェックインしたにもかかわらず、ワークスペースがファイルがそこにあることを認識していないようで、その結果、PendEdit()の前にGet()を実行する必要がありました。

于 2010-06-04T12:14:36.997 に答える