version-control - TFS 将FolderDiff 结果添加到变更集(或等效功能!)

标签 version-control scripting command-line tfs

我已经设置了一个过程来自动为我们的数据库对象生成脚本并将它们放在一个文件夹中。我手动将文件夹添加到 TFS。我想自动检测 TFS 和我的文件夹之间的更改,根据差异创建更改集,然后 checkin 更改集。以下命令显示 TFS 中需要更新的所有差异:

tf folderdiff . /r /i

也可以写成如下:

tf folderdiff . /recursive /noprompt

该命令正确识别了所有需要添加(目标)、删除(源)和更新(不同)的文件。然而,这只是一个信息输出,我真的不想编写代码来抓取它并根据它采取行动。我怀疑我缺少一些明显的命令,我应该使用它们来生成正确的变更集。什么代码会自动检测更改并将其添加到更改集中?

将更改添加到变更集后,我将运行以下代码来 checkin 变更集:

tf checkin /comment:"Change automatically detected." /override:"Automated commandline checkin." /noprompt

最佳答案

使用Team Foundation Server Power Tools - 它包括tfpt.exe命令行工具,其中包括online命令,该命令将定位更改并挂起适当的添加、编辑或删除操作。然后您可以 checkin 生成的变更集。很简单:

tfpt online /adds /deletes
tf checkin

关于version-control - TFS 将FolderDiff 结果添加到变更集(或等效功能!),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8405328/

相关文章:

mysql - "chown mysql:mysql/data/tmp"命令

command-line - 帮助 : UDP broadcast vlc stream weirdness!

Git - 当你改变分支时文件去哪里了?

git - 在 Git 中尝试还原时发生冲突

svn - 如何将分支合并到主干?

android - 什么进入源代码管理?

c# - 如何在 Unity 中使用 UI.Text 作为预制件?

scripting - 如何在Shell脚本中获取命令的打印信息

shell - Unix 变量声明

linux - 如何从 Linux 命令行上的变量中提取不带扩展名的文件名(并添加计数器)?