当前位置: 首页 > 面试题库 >

TFS for Java-好主意吗?

闻人梓
2023-03-14
问题内容

我们正在考虑将TFS用于基于.NET的项目以及作为任务管理平台。一些团队专门使用Java开发,他们对SVN(Subclipse)非常满意。

我们的经理提出了以下问题:

  • 我们也应该将Java团队迁移到TFS吗?
  • TFS(仅源代码控制)是否可以很好地处理Java项目?
  • 将我们的Java代码库和历史记录从Subclipse迁移到TFS是否很痛苦?

目前,出于可维护性的考虑,我们正在寻求将TFS用作唯一的源代码控制平台。我们希望避免让我们的IT人员支持多个系统。

谢谢


问题答案:

完全公开,我在为TFS编写Java工具的团队中工作,因此请以适当的偏见来回答这个问题:-)

就TFS而言-所有代码都是平等创建的。它只是签入版本控制的文件中的字节。像所有SCM系统一样,它并不关心文件以什么语言编写。

Microsoft 为Eclipse提供了一个完整的,丰富的TFS插件(称为Team Explorer
Everywhere)。这提供了完整的源代码控制,工作项跟踪,构建,共享点,报告从基于Eclipse的IDE到TFS的访问等。它用100%Java编写,直接与TFS公开的Web服务对话。

此外,我们还为TFS提供了一个跨平台的命令行客户端,以便您可以从所选操作系统(Mac,Linux,Solaris,HP-
UX,Aix等都完全受支持)的命令行与TFS通讯。

最后,如果您有用Java编写的工具想要与TFS对话,那么他们可以使用TFS SDK for
Java
,这是我们用来创建Eclipse集成和跨平台命令行客户端的完整API,但与之打包在一起样本和摘要,并准备好随您的应用程序重新分发。

在构建时,您有两种选择。如果您要坚持使用当前的构建服务器,则可能已经支持与TFS进行通信(所有流行的开源构建服务器都支持)。除此之外,Microsoft还提供了TFS
Build
Extensions,使您可以在Team
Foundation
Build服务器上运行基于Ant或Maven的构建。如果您在构建过程中执行JUnit测试,则生成结果(以及所有警告或错误)将与所有JUnit测试数据一起发布回TFS。另外,您还可以在Eclipse
IDE中创建和管理构建定义,并可以在一个位置管理对它们的访问等。

因此-对Java的支持水平很高,并且Microsoft已在该领域显示出持续的投资。我们最近发布了一些用于Eclipse的TFS
2010电动工具,我们还发布了Team
Explorer Everywhere 11的预览版以及Team Foundation Server 11(我们是公司内部的同一团队)。

要从SVN导入历史记录,与将历史记录从任何SCM工具导入到TFS(或将TFS导入任何SCM工具)相同。您有两种选择。您可以拍摄快照并在特定点(例如发行版)进行切换,也可以迁移历​​史记录。为了从SVN迁移历史,提供了一些合作伙伴解决方案,其中包括来自Timely
Migration的合作伙伴解决方案,我已经看到很多客户都获得了成功。

希望能有所帮助。



 类似资料:
  • 问题内容: 我已经多次听到您不应该执行或出于性能方面的考虑,但是无法深入了解有关它的更多信息。 我可以想象数据库随后将 所有 列都用于操作,这可能会导致性能下降,但是我不确定。有人有关于该主题的更多信息吗? 问题答案: 1.关于count(*)vs. count(其他) SQL是声明性的,您可以指定所需的 内容 。这不同于指定 如何 获得所需的东西。这意味着数据库引擎可以自由地以其认为最有效的方式

  • 本文向大家介绍Python和多线程。这是个好主意吗?,包括了Python和多线程。这是个好主意吗?的使用技巧和注意事项,需要的朋友参考一下 实际上,这不是一个好主意。 Python不允许多线程,但是如果您想运行需要等待IO之类的程序速度,则它会占用很多时间。由于线程包无法让您使用额外的CPU内核,因此python不支持多线程,因为Cpython解释器上的python不支持通过多线程执行真正的多核。

  • 问题内容: 我正在设计一个系统,但我认为让最终用户删除数据库中的条目并不是一个好主意。我认为是这样,因为最终用户常常被授予管理员权限,最终可能使数据库混乱,然后求助于我修复它。 当然,如果将它们设置为admin,他们将需要能够删除条目或至少认为它们确实如此。 因此,我当时认为数据库中的 所有 条目都应有一个“活动”字段。如果他们尝试删除条目,则只会将标志设置为“ false”或类似的内容。然后会有

  • 本文向大家介绍python多线程(multi-threading).这是个好主意吗?相关面试题,主要包含被问及python多线程(multi-threading).这是个好主意吗?时的应答技巧和注意事项,需要的朋友参考一下 python并不支持真正意义上的多线程,python提供了多线程包。python中有一个GIL的东西,能确保代码中只有一个线程在执行,经过GIL处理,如果是CPU密集型,即计算

  • 问题内容: 我最近发现了如何通过此方法在python中动态创建变量: 从而创建变量。 我的问题是,这是个好主意吗?还是应该总是提前声明变量? 问题答案: 我认为最好使用字典: 我认为这更像Python。

  • 问题内容: 例如,这是个好主意吗? 如果您在同一台服务器上有两个虚拟主机,一个虚拟主机,一个虚拟主机,并且使用不同的Apache DocumentRoots,则这将避免当include的来源未知并且可以在任何目录中时,不必包含绝对路径。 (注意:以下部分中的文件路径是相对于Web根目录的。实际上,它们类似于,其中Web根目录在哪里) 例如:我有一个/core/init.php,它是使用来自网站(,