将搁置集和 MyWork 迁移到新的域用户
Migrating shelvesets and MyWork to a new domain user
我们的 IT 决定将 AD 迁移到新域。现在,那些确实迁移了帐户的人面临着一个问题——他们失去了代码审查和搁置集。他们并没有真正失去它。它仍然可以通过 "Find Shelvesets" 访问并输入 olddomain\user
。但是 "My Work" 现在已断开连接。甚至打开"My Work"查询,修改一个用户名给老用户,还是没有成功。
澄清一下 - 只有用户被移动到新域,而不是 TFS 服务器
有没有人做过这样的事情以及任何建议和解决方法?
不幸的是,他们没有正确移动域。如果操作正确,数据将转移给新用户。不幸的是,由于 TFS 现在有 2 条具有唯一标识符的记录,所以在搞砸之后没有适当的修复。无法删除或合并这些记录。
您应该能够在脚本中执行以下操作:
- 创建一个工作区(tf vc 工作区)
- 映射项目文件夹(tf vc映射)
- 获取最新(tf vc获取)
- 查询你老用户的所有搁置集(tf vc shevesets)
- 循环中
- 取消搁置 shelfset(tf vc 取消搁置)
- 在当前用户下搁置一个新的(tf vc 搁置)
- 撤消挂起的更改(tf vc 撤消)
其中许多命令支持 /format:xml
参数,因此可以轻松地在 PowerShell 脚本中调用它们并提取数据以用于后续步骤。
我不认为我的工作会恢复相关的工作项目和所有。我的作品已从 Visual Studio 的最新版本中删除,因此您可以利用这个时间来适应它。
其他可能丢失的东西:
- "My Queries" 下的工作项
- 我的容量
- 工作项关联
- 工作区中的待定更改
正确的TFS域迁移方法是先挂起服务器,再进行账号迁移,然后运行 tfsconfig identities
:
{Server install path}\Tools>TfsConfig.exe identities /change /fromdomain:old /todomain:new /account:old /toaccount:new
但这只能在 TFS 尚未将新身份同步到数据库时才能完成。这可能有助于将来的问题,因为他们会转移新用户。
我们的 IT 决定将 AD 迁移到新域。现在,那些确实迁移了帐户的人面临着一个问题——他们失去了代码审查和搁置集。他们并没有真正失去它。它仍然可以通过 "Find Shelvesets" 访问并输入 olddomain\user
。但是 "My Work" 现在已断开连接。甚至打开"My Work"查询,修改一个用户名给老用户,还是没有成功。
澄清一下 - 只有用户被移动到新域,而不是 TFS 服务器
有没有人做过这样的事情以及任何建议和解决方法?
不幸的是,他们没有正确移动域。如果操作正确,数据将转移给新用户。不幸的是,由于 TFS 现在有 2 条具有唯一标识符的记录,所以在搞砸之后没有适当的修复。无法删除或合并这些记录。
您应该能够在脚本中执行以下操作:
- 创建一个工作区(tf vc 工作区)
- 映射项目文件夹(tf vc映射)
- 获取最新(tf vc获取)
- 查询你老用户的所有搁置集(tf vc shevesets)
- 循环中
- 取消搁置 shelfset(tf vc 取消搁置)
- 在当前用户下搁置一个新的(tf vc 搁置)
- 撤消挂起的更改(tf vc 撤消)
其中许多命令支持 /format:xml
参数,因此可以轻松地在 PowerShell 脚本中调用它们并提取数据以用于后续步骤。
我不认为我的工作会恢复相关的工作项目和所有。我的作品已从 Visual Studio 的最新版本中删除,因此您可以利用这个时间来适应它。
其他可能丢失的东西:
- "My Queries" 下的工作项
- 我的容量
- 工作项关联
- 工作区中的待定更改
正确的TFS域迁移方法是先挂起服务器,再进行账号迁移,然后运行 tfsconfig identities
:
{Server install path}\Tools>TfsConfig.exe identities /change /fromdomain:old /todomain:new /account:old /toaccount:new
但这只能在 TFS 尚未将新身份同步到数据库时才能完成。这可能有助于将来的问题,因为他们会转移新用户。