2016-03-24 10 views
3

OpsHub Migration Utility pageの次のテキストは、移行されたチェンジセットのコメントにユーザー名とタイムスタンプが埋め込まれることを示しています。チェンジセットのユーザー名とタイムスタンプを移行する必要がありますか?

元のユーザー名、オリジナルのチェックインタイムスタンプのようなソース変更に関するメタデータ情報は、変更セットの移行中の変更セットコメントに埋め込まれています。 https://visualstudiogallery.msdn.microsoft.com/28a90a17-d00c-4660-b7ae-42d58315ccf2

なぜこのメタデータがチェンジセットコメントに埋め込まれていないのですか?

答えて

3

この機能は昨年11月の商用版に移行したので、その変更を反映するためにビジュアルスタジオギャラリーの説明を更新する必要があると思われます。

私はあなたが移行前のチェンジコメントにデータをコピーするために、ソース・サーバー上で実行できるコードのバッチを持っている:

using System; 
using System.Collections.Generic; 
using System.Globalization; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 

using Microsoft.TeamFoundation.Client; 
using Microsoft.TeamFoundation.VersionControl.Client; 

namespace TfsChangesetCommentEnricher 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      var collection = TfsTeamProjectCollectionFactory.GetTeamProjectCollection(
       new Uri("http://jessehouwing:8080/tfs/defaultcollection")); 

      var vcs = collection.GetService<VersionControlServer>(); 

      var changes = vcs.QueryHistory(new ItemSpec("$/", RecursionType.Full)); 

      foreach (var change in changes) 
      { 
       if (!change.Comment?.Contains("\r\n\r\n-- \r\nOriginally checked-in") ?? true) 
       { 
        change.Comment = string.Format(
         CultureInfo.InvariantCulture, 
@"{0} 

-- 
Originally checked-in 
* by: {1} ({2}) 
* on: {3:u} 
* in: {5} 
* id: {4}", 
         change.Comment, 
         change.Committer, 
         change.CommitterDisplayName, 
         change.CreationDate, 
         change.ChangesetId, 
         change.VersionControlServer.TeamProjectCollection.Uri); 

         change.Update(); 
       } 
      } 
     } 
    } 
} 

これは、ソースサーバのチェンジセットを更新すると、移行前に情報を埋め込みます。そうすれば、データは成功裏に成功します。私はこの機能のためにチームプロジェクトあたり1500ドルを支払うことを拒否しました。

は、次のように

新機能行列である参照:このジェシーのために非常に多くの

enter image description here

+0

感謝を! –

関連する問題