从 TFS 迁移到 VSS
一年前,我安装了 Team Foundation Server 并从 VSS 迁移了我的代码。这是一个很大的错误。在工作区、只读标志、解决方案绑定和糟糕的合并工具之间,我认为我应该坚持使用 VSS。
那么,如何从 TFS 迁移回 VSS?
I installed Team Foundation Server and migrated my code a year ago from VSS. It was a big mistake. Between workspaces, read-only flags, solution bindings and bad merge tools, I think I should have just stuck with VSS.
So, how do I migrate back to VSS from TFS?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
VSS 是最糟糕的版本控制工具,请不要回到那里。如果 TFS 确实不适合您(这很公平),那么您应该考虑 Subversion 或 DVCS,例如 Mercurial 或 git。如果您喜欢 VSS 的简单性,那么 Sourcegear 的“Vault”可能值得研究。我从来没有愤怒地使用过它,但它在布局和功能上与 VSS 非常相似,但如果你的存储库大小超过 2GB,它不会破坏你的代码并死在它的屁股上。
另一件需要注意的事情是,VSS 现在已经脱离了主流支持,并且不会再获得任何错误修复或版本,从 MS 的角度来看,它是一个死产品。
如果您提供更多详细信息,那么也许有人可以帮助您克服问题,而不是经历迁移到另一个 VCS 的痛苦?
例如,TFS 中的合并工具有点笨拙,但它们可以被市场上几乎任何其他工具替换,我使用 SourceGear Diffmerge 但还有很多其他您可以使用。
我从来没有真正遇到过工作区或解决方案绑定的问题,因此如果没有更多信息,我无法真正提供任何帮助。至于只读标志,我假设您是指在 Visual Studio 之外编辑文件时?如果是这种情况,则可以使用 TFS 电动工具安装资源管理器集成,这将允许您执行最常见的版本控制任务,而无需等待 Visual Studio 预热。
我认为 TFS 是比 VSS 更好的版本控制工具,但说实话,这是一个相当低的标准。当然 YMMV :-) 请不惜一切代价尽量避免 VSS!
VSS is the worst Version Control tool out there, please don't go back there. If TFS is really not your thing (and that's fair enough) then you should consider Subversion, or a DVCS such as Mercurial or git. If you like the simplicity of VSS then Sourcegear's "Vault" might be worth investigating. I've never used it in anger but it's very similar to VSS in layout and function, but it won't corrupt your code and die on it's arse if your repository goes over 2GB in size.
Another thing to note is that VSS is now out of mainstream support and wont be getting any more bug fixes or versions, from MS's point of view it's a dead product.
If you give some more detail then maybe someone can help you overcome the problems rather than going through the pain of migrating to another VCS?
For example the merge tools in TFS are a bit ropey but they can be replaced by just about any other tool on the market, I use SourceGear Diffmerge but there are plenty of others you can use.
I've never really had a problem with workspaces or solution bindings so without more information I can't really offer any help. As for Read Only flags, I assume you mean when you edit files outside of Visual Studio? If that's the case then the TFS power tools can be used to install Explorer integration which will let you do the most common version control tasks without having to wait for Visual Studio to warm up.
I think TFS is a much better Version Control tool than VSS but that's a pretty low bar to be honest. Of course YMMV :-) just please try to avoid VSS at all costs!
断开与 TFS 源代码管理的连接,然后添加然后重新添加到 VSS,尽管您肯定可以想出比 VSS 更好的解决方案? Subversion、Git、Mercurial、Veracity?
Disconnect from Source Control for TFS, and then add then re-add to VSS, though surely you can come up with a much better solution than VSS? Subversion, Git, Mercurial, Veracity?
VSS 是生命终结。为什么不使用 Hg 或 Git?
您可以使用 vss2git 将您的历史记录转换为 git 存储库,更糟糕的情况是使用 Hg 将存储库移植到 Hg。
VSS is end of life. Why not use Hg or Git?
You can use vss2git to convert your history to a git repo and worse case use Hg to port the repo to Hg.
TFS 在源代码控制系统中有一些很好的^H^H^H^ 糟糕的 API。您可以编写一个程序:
您会失去时间和用户信息,但至少您将拥有您的历史。
不确定它将如何扩展,但您可以暂时将其放入 MongoDB 中或使用 BizTalk 将其排队。然后让多台计算机进行签到操作。如果每个用户都有一个,并让他们调整时钟,那么您可以保留该信息。
或者你可以砍掉你的手臂,两者都有相同的结果。
TFS has some nice^H^H^H^ awful APIs into the source control system. You could write a program that:
You'd lose the time and user info, but at least you'll have your history.
Not sure how it would scale, but you could temporarily put it into MongoDB or queue it up using BizTalk. Then get multiple computers to do the checkin operations. If you have one per user, and have them adjust their clocks, you could preserve that info.
Or you could cut off your arm, both have the same result.