集成TFS版本控制的最佳方法是什么

时间:2008-09-16 08:21:04

标签: xcode version-control tfs

致力于在整个组织中实施TFS。可以很容易地与.NET项目以及使用Eclipse或Eclipse衍生物进行编辑的任何平台集成 在Xcode中使用TFS版本控制的最佳方法是什么(现在我发现我们需要编写一些iPhone应用程序)?

6 个答案:

答案 0 :(得分:12)

Xcode集成是我们Teamprise一直在寻找的东西。我们面临的主要问题之一是Apple没有提供我们可以挂钩的版本控制API来为Xcode添加新的版本控制系统 - 对于集成版本控制,它可以是Apple提供访问的系统,也可以是时刻。

也就是说,我们确实有很多客户在Xcode中为TFS开发。他们使用Teamprise Explorer(它是作为通用二进制编译的TFS的独立GUI客户端),或者他们在Xcode中具有执行基本检出并与TFS command line (tf)一起执行操作的宏。这显然不是理想的体验,但对他们来说是可以接受的。独立的GUI具有以下优势:您可以在那里执行所有工作项跟踪,并将其与您的签到集成。

很抱歉,如果这是一个非常“营销”类型的答案 - 只是想让您知道我们当前的客户使用Xcode做什么。如果您想了解宏观方法的更多细节,请告诉我。

希望有所帮助,

马丁。

答案 1 :(得分:4)

几周之前,codeplex宣布Git-tf可以完成这项工作。

答案 2 :(得分:3)

一种方法是在VMWare中使用Windows下的Team Foundation System客户端,并检查(或任何TFS调用它)您的源到Mac上与虚拟机共享的目录。看起来Teamprise在Eclipse上构建了Mac OS X的Team Foundation客户端,值得研究。

也就是说,我非常强烈建议您使用像Subversion或Perforce这样的原生跨平台源代码管理系统,而不是像您的公司的公司那样使用像Team Foundation System这样的特定于平台的孤岛。代码,特别是因为您将要进行多平台开发。

虽然您不太可能在.NET应用程序和iPhone应用程序之间共享代码,但对设计文档之类的内容进行完全跨平台访问可能非常重要。 Mac OS X 10.5及更高版本包括Subversion,Perforce随时可用,并且Xcode IDE本身支持Perforce和Subversion。特别是Subversion对于经验丰富的Mac和iPhone开发人员来说也更为熟悉,这些开发人员可能会在您升级时加入您的项目。

答案 3 :(得分:3)

也许SVNBridge会做到这一点,它是CodePlex(Microsoft的开源主机)使用的开源。请在此处查看:http://www.codeplex.com/SvnBridge

除了简单地使用它连接到CodePlex之外,我对它的经验有限。

答案 4 :(得分:1)

请按照以下链接进行操作:

https://www.visualstudio.com/get-started/cross-platform/share-your-xcode-projects-vs

之后,将现有的xCode项目代码签入TFS

在Mac上,下载并解压缩www.microsoft.com/en-us/download/details.aspx?id=30474。我把它放在/users/{myuseraccount}/git-tf

打开终端并运行以下命令

export JAVA_HOME=/Library/Java/Home
export PATH=$PATH:$JAVA_HOME/bin:/git_t
export PATH="/Applications/Xcode.app/Contents/Developer/usr/libexec/git-core/":$PATH
export PATH="/Users/{myuseraccount}//Git-Tf/":$PATH

将工作目录更改为xCode项目文件夹:

例如:cd “/users/{myuseraccount}/documents/xCode Projects/testproject1/”

在终端火灾中:

- git remote add origin url//companyName.visualstudio.com/DefaultCollection/_git/xyz

而不是

git push -u origin --all

它会直接将您的项目推送到Visual Studio TFS服务器.. !!!!

答案 5 :(得分:0)

最大的问题是Xcode只能在OS X上运行,而TFS客户端工具只能在Windows上运行。如果您是OS X中的主机操作系统,并且您有一个本地运行的Windows虚拟环境(如Parallels或VMFusion),那么您可以使用Team Explorer或命令行工具来处理存储库。

但是,使用真正过时的版本控制系统需要做很多工作。如果您不必使用TFS,我可能会使用SVN或其他支持本机OS X的东西。