VS2008 / TFS中有待更改的文件列表到剪贴板

时间:2008-11-06 16:54:58

标签: visual-studio-2008 tfs

当我右键单击VS2008中的解决方案并选择“检入...”时,我会看到一个包含复选框和注释区域的已更改文件列表。 (这是针对TFS完成的。)

我们的签到过程要求我们将此已更改文件列表输入到错误跟踪凭单中。这需要输入每个文件的名称:耗时且容易出错。

理想情况下,我希望能够选择该列表并将其复制到剪贴板,以便将其粘贴到错误跟踪系统中。

有没有人可以轻松地将该列表放入剪贴板?

6 个答案:

答案 0 :(得分:2)

我使用SnagIt来做这些事情,这真是一个了不起的应用程序。他们有非免费版本和免费版本(说明here)。老实说,我不知道没有它我是如何生活的。

其功能之一是能够从窗口中抓取文本(如Windows资源管理器文件夹视图),这可能会满足您的需求。

答案 1 :(得分:2)

我不知道没有标准方法,怎么做。但是你可以创建一个工具来做到这一点。

            string strServer = startInfo.Server;
            string strWorkspace = startInfo.Workspace;

            Microsoft.TeamFoundation.Client.TeamFoundationServer tfsServer = null;
            if ( false == string.IsNullOrEmpty( strServer ) ) {
                tfsServer = new Microsoft.TeamFoundation.Client.TeamFoundationServer( startInfo.Server );
                tfsServer.Authenticate();
            }

            Microsoft.TeamFoundation.VersionControl.Client.VersionControlServer vcServer = null;
            if ( tfsServer != null ) {
                object obj = tfsServer.GetService( typeof( Microsoft.TeamFoundation.VersionControl.Client.VersionControlServer ) );
                vcServer = obj as Microsoft.TeamFoundation.VersionControl.Client.VersionControlServer;
            }

            Microsoft.TeamFoundation.VersionControl.Client.Workspace workspace = null;
            if ( tfsServer != null && vcServer != null && false == string.IsNullOrEmpty( strWorkspace ) ) {
                workspace = vcServer.GetWorkspace( strWorkspace, tfsServer.AuthenticatedUserName );
            }

            List<string> pendingItems = new List<string>();
            foreach ( Microsoft.TeamFoundation.VersionControl.Client.WorkingFolder folder in workspace.Folders ) {
                pendingItems.Add( folder.ServerItem );
            }

            List<string> localFilePaths = new List<string>();
            string userName = tfsServer.AuthenticatedUserIdentity.AccountName;
            Microsoft.TeamFoundation.VersionControl.Client.PendingSet[] pendingSets = workspace.QueryPendingSets( pendingItems.ToArray(), Microsoft.TeamFoundation.VersionControl.Client.RecursionType.Full, null, userName, false );
            foreach ( Microsoft.TeamFoundation.VersionControl.Client.PendingSet ps in pendingSets ) {
                foreach ( Microsoft.TeamFoundation.VersionControl.Client.PendingChange change in ps.PendingChanges ) {
                    localFilePaths.Add( change.LocalItem );
                }
            }

答案 2 :(得分:2)

显然,您的组织可能具有的一大优势是,如果他们还将错误跟踪系统移至TFS,那么当您签入文件时,您可以将该签到与工作项(错误,任务等)和协会将为您照顾。它还允许大量报告等 - 所有好东西。

答案 3 :(得分:2)

如果您的公司已经为TFS安装了Web访问电源工具,那么您只需将一个网址粘贴到您的错误跟踪系统中,该系统会链接回办理登机手续。

看起来像这样......

<强> http://mytfs:8090/cs.aspx?cs=1234

节省时间,错误几率很小。

的Ta。

史蒂夫波特

答案 4 :(得分:1)

为什么不勾选检查对话框的截图(alt + Print Screen)并将图像上传到错误跟踪系统?

答案 5 :(得分:1)

在VS 2010中选择所有文件,然后按CTRL+C将文件详细信息复制到剪贴板。