TFS 项目在 2 个 TFS 服务器上同时工作
我们有 2 个开发团队,一个团队负责 TFS2005,另一个团队负责 TFS2010。 这是相同项目,但一个团队继续开发 .net Framework1.1 项目版本,另一个团队开发 .net Framework4.0 项目版本。
我们只有源代码控制(没有工作项目等...)
在我们第一次从 TFS2005 导入 TFS2010 到 TPC X 后,我们可以在一周后仅导入过去一周的更改吗?
我们可以将(TFS2005 到 TFS2010)导入到同一个 TPC X(已经存在的)吗?
可以自动签入到 2 个 TFS 服务器吗?
we have 2 dev teams, one team work on TFS2005 and the other team work on TFS2010.
it's the SAME project but one team is continue to work on .net framework1.1 project version and the other team work on the .net framework4.0 project version.
WE HAVE ONLY SOURCE CONTROL (NO WORKING ITEMS AND ETC...)
after we do the first import from TFS2005 to TFS2010 to TPC X, can we import after one week just the changes of the passed week?
can we do import (TFS2005 to TFS2010) to the same TPC X (already existing one) ?
can check in can be done automatic to 2 TFS servers ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果可能的话,我会避免将代码库拆分到两台服务器上。将代码移至 TFS 2010 后,我将使用分支来区分代码的 .net 1.1 版本和 .net 4 版本。
一旦您将代码放入分支中,您就可以定期合并代码以保持版本同步。
您需要考虑哪种分支策略最适合您的情况,请阅读 codeplax 指南来帮助您做出决定。您的分支策略将在很大程度上取决于您的代码的 .net 1.1 版本是否正在积极开发,或者是否仅处于维护/错误修复模式。
如果您使用 VS 2003 进行 .net 1.1 开发,您可以使用 MSSCCI 提供程序 为您提供基本的 TFS 集成。
I'd avoid splitting your code base accross 2 servers if possible. Once you've moved the code in to TFS 2010 I'd use branching to distinguish between the .net 1.1 version of the code and the .net 4 version.
Once you have the code in branches you can merge the code on a regular basis to keep the versions in step.
You need to think about what branching stratgy works best for your situation, read the guidance on codeplax to help you decide. Your branching strategy will depend largly on whether the .net 1.1 version of your code is being actively developed or if it's just in maintenance / bug fix mode.
If you're using VS 2003 to do the .net 1.1 development you can use the MSSCCI provider to give you basic TFS integration.
从您的描述来看,您似乎已经在两个单独的 TFS 服务器中拥有该项目的两个版本。我同意 James 的观点,最好不要将代码库拆分到两个版本控制系统上,但有时我们最终会遇到这种情况。
如何从 TFS2005 导入到 TFS2010?
这是一个重要的问题。 TFS2010 无法将单个团队项目从一台服务器导入到另一台服务器。您可以导入整个 TPC(团队项目集合)。我只知道两种方法:
A)认真看看TIP(TFS集成平台)。它并不完美,但它旨在满足您的需求。
B) 您可以进行快照迁移。基本上,这意味着从 VS2005 获取最新版本,签入 VS2010(无论您想要在哪里),然后将所有以前的历史记录保留在 VS2005 中。
如果 TIP 不适合您,或者被认为风险太大或缺少关键信息,请了解 TFS2010 是否可以导入 TFS2005 数据库来迁移您的 TFS2005 团队项目集合。如果是,则制作 TFS2005 版本控制数据库的副本,然后将整个团队项目集合导入到 TFS2010 中,然后从此集合中删除不需要的其他 TFS2005 项目。您可以将其称为您的 TFS2005 存档团队项目集合,并在需要时保留完整的保真版本历史记录。我从 TFS2008 迁移到 TFS2010 几次。这并不简单,但可行。
迁移方法:
计划 A:将所有内容迁移到 TFS2010,并尽快停用 TFS2005。您可以存档 2005,或者如果您认为有必要的话,也可以将其移动到虚拟机...但您确实希望将管理工作减半,并通过将所有内容移动到 TFS2010 来获得 5 年的改进。
B 计划:建立一个允许您在两台服务器之间集成的系统,直到您最终可以停用 TFS2005。仅在绝对必要时保持这种情况,并升级您需要的任何内容,以解锁将所有内容迁移到 TFS2010。
问答:
答:应该是可行的,但导入的保真度取决于您导入的方式。
如果您通过将最新版本的 VS2005 代码检入 VS2010 来进行“快照迁移”,那么您可以检出第一个快照,对代码重复一个新快照,然后合并更改。快照迁移过程的大缺点是您会丢失 TFS2005 中的所有元数据,包括更改历史记录、标签、签入注释...
如果您使用 TFS 集成平台,希望大多数内容和元数据都会传输。这里的巧妙之处在于,一旦您定义了同步规则并运行它,您就可以简单地重新运行相同的迁移并进行细微的更改。观察标签和变更集元数据如何传输。
TFS 集成
答:这应该不是问题。 TFS 集成平台或签入“快照迁移”可以针对任何文件夹路径。我假设当前两个代码库之间没有建立正式的分支关系。因此,我强烈建议将导入的文件签入单独的文件夹,将其转换为分支(如果尚未通过导入过程完成),然后建立对现有 TFS2010 项目分支有意义的任何分支关系。如果这两个项目之间没有共享代码,那么我会将它们的分支分开。
答:这就是 TIP(TFS 集成平台)的承诺。我个人在尝试将完整源历史记录从一台 TFS2010 服务器迁移到另一台服务器时遇到了困难,但该问题的很大一部分是跨越 6,000 多英里和 3 个防火墙的网络问题。
首先阅读此博客及其评论,对 TIP 和当前限制进行均衡讨论:TFS 集成平台已更新(2011 年 3 月)
祝你好运!
From your description it sounds like you already have two versions of this project in two separate TFS Servers. I agree with James that it's best not to split codebase across two version control systems, but sometimes we just end up in this type of situation.
How are you importing from TFS2005 to TFS2010?
This is an important question. TFS2010 does not have a way to import a single Team Project from one server to another. You can Import an entire TPC (Team Project Collection). I know of only two methods:
A) Seriously look at TIP (TFS Integration Platform). It's not perfect, but it is designed to do what you are looking for.
B) You can do a snapshot migration. Basically this means getting latest from VS2005, check in to VS2010 (wherever you want), then leave all prior history in VS2005.
If TIP doesn't work for you or is deemed too risky or missing critical info then find out if TFS2010 can import TFS2005 databases to migrate your TFS2005 Team Project Collection. If yes then make a copy of the TFS2005 Version Control databases, then import the entire Team Project Collection into TFS2010, then delete the other TFS2005 projects from this collection that aren't needed. You can call this your TFS2005 Archive Team Project Collection and keep the full fidelity version history on-hand if needed. I did a migration from TFS2008 to TFS2010 a couple times. It's non-trivial but doable.
Migration approaches:
Plan A: Migrate everything to TFS2010 and retire TFS2005 as soon as you can. You can archive 2005 or perhaps move it to a virtual machine if you feel it's essential to have available... but you really want to cut your admin work in half plus get 5 years worth of improvements by moving everything to TFS2010.
Plan B: Set up a system that allows you to integrate between the two servers until you can finally retire TFS2005. Stay in this situation only as long as absolutely necessary and upgrade whatever you need to unblock moving everything to TFS2010.
Q&A:
A: It should be doable, but fidelity of import depends on how you are importing.
If you are doing a "snapshot migration" by checking in the latest version of VS2005 code into VS2010 then you can check out the first snapshot, repeat a new snapshot over the code, then merge the changes. The BIG drawback to snapshot migration process is that you lose all metadata in TFS2005 including change history, labels, checkin comments...
If you use TFS Integration Platform hopefully most content and metadata will transfer. The neat thing here is once you define the synchronization rules and run it once you can simply re-run the same migration with minor changes. Watch for how labels and changeset metadata gets transferred.
TFS Integration
A: That shouldn't be a problem. TFS Integration Platform or checking in a "snapshot migration" can be targeted to any folder path. I assume there is no formal branch relationship established between the two codebases currently. Therefore I'd strongly recommend checking in the imported files into a separate folder, convert it to a branch (if not already done by import process), then establish whatever branching relationship makes sense to the existing TFS2010 project branch. If there is no shared code between these two projects then I'd keep their branches separated.
A: That's the promise of TIP (the TFS Integration Platform). I personally had a rocky time trying to get it to migrate full source history from one TFS2010 Server to another, but big part of that problem was network issues traveling across 6,000+ miles and 3 firewalls.
Start by reading this blog and it's comments for a well balanced discussion of TIP and current limitations: TFS Integration Platform Updated (Mar ‘11)
Good Luck!