TFS:ChangeType为“添加”,“编辑”用于“编辑”或“添加”

时间:2014-07-03 14:45:12

标签: tfs changetype

添加1.txt并修改2.txt。

问题是,changeType总是"添加,编辑,编码"!

var tfs = ...;
var changeset = tfs.GetChangeset(new Uri("tfs path"), 999);
foreach (var w in changeset.Changes)
   Debug.Print( w.Item.ServerItem + " -> " + w.ChangeType );

//Output:
$/.../1.txt -> Add, Edit, Encoding
$/.../2.txt -> Add, Edit, Encoding

有人知道每个文件发生了什么,为什么我总是有这三种类型?

谢谢!

1 个答案:

答案 0 :(得分:1)

有点晚了,但碰巧没有回答,所以这就是我所做的:

var vcs = projects.GetService<VersionControlServer>();
foreach ( var w in changeset.Changes ) {
    w.Item.DownloadFile( tmpFile );
    var str = System.IO.File.ReadAllText( tmpFile );
    var bocs = GetCodeBytes( str, fileType.RemovesRegExp );
    try{
        Item previousItem = vcs.GetItem( w.Item.ItemId, Convert.ToInt32( iRevision - 1 ), true );
        previousItem.DownloadFile( tmpFile );
        var str2 = System.IO.File.ReadAllText( tmpFile );
        bocs = bocs - GetCodeBytes( str2, fileType.RemovesRegExp );
        changeTypeString = "mod";
    }
    catch{
        bocs = w.Item.ContentLength;
    }
}

这不是一个有效的代码,它只是基本的想法