我一直在为如何使用TFS作为iPhone开发的源代码存储库而苦苦挣扎。
我的老板永远不会让我使用Subversion (或者上帝保佑Perforce),所以我坚持使用TFS源代码控制。
解决方案是去购买工具来连接Mac和TFS,我不想在这里做广告,但Teamprise for Mac是Mac和TFS之间的桥梁。
对于标准签入和开发人员工作流,Xcode和TFS之间没有集成。您必须通过Teamprise客户端手动完成所有这些工作。
对于构建,事实证明,Automator和Teamprise client可以做到这一点。
有没有Xcode到TFS的桥?您在iPhone开发中使用的是什么源代码控制系统?
对我来说,关键是以下嵌入在Automator工作流程中的bash脚本。
%1 =要将代码拉入到的本地文件夹。%2 =要从中执行拉取的项目名称。
此脚本假定Teamprise Client已安装到~/Teamprise
PATH="$PATH:~/Teamprise:~/Teamprise/lib"
cd "$1"
mkdir "$1/logs"
tf workspace -delete BuildScript -server:http://TFSServer -login:uname@domain,password >> $1/logs/wsdelete1.log
tf workspace -new BuildScript -server:http://TFSServer -login:uname@domain,password >> $1/logs/wscreate.log
tf workfold -map "$/TFSRoot" . -workspace:BuildScript -server:http://TFSServer -login:uname@domain,password >> $1/logs/workfold.log
tf get "$/TFSRoot/$2" -all -recursive -server:http://TFSServer -login:uname@domain,password >> $1/logs/get.log
tf workspace -delete BuildScript -server:http://TFSServer -login:uname@domain,password >> $1/logs/wsdelete2.log
#pump the tfs landing folder to the next step in the Automator script.
echo $1/Projects/$2发布于 2009-08-26 14:39:03
正如Louis所说,XCode目前没有为我们提供一个可公开访问的插件模型(Teamprise)来提供TFS集成--这是我们喜欢做的事情。
我们已经尝试了一些技巧--比如假装成Perforce命令行并与TFS对话,然而这些概念的内部证明到目前为止还没有很好地发挥作用--特别是因为我们希望理想的情况下也能以某种方式链接到工作项跟踪,这样你就可以将签到与bug等联系起来。
今天,我们的大多数客户正在使用团队企业与来自XCode的of对话,他们要么使用独立的UI工具(Teamprise Explorer),要么执行您建议的挂接到tf command line中的自动化操作。
很抱歉,这不是一次很棒的经历。我所能建议的是,您可以file a bug with Apple为SCM系统提供一个挂接到XCode的插件模型。希望如果有大量的开发人员需求,那么我们可能会有更多的运气,而不仅仅是我们请求它。
发布于 2009-08-26 13:02:18
虽然Xcode在内部使用一个插件系统来支持不同的版本控制系统,但它并不是公开的,也没有文档记录。除了像运行一些命令行脚本这样的最低限度的支持之外,除了Xcode附带的那些版本控制系统之外,没有任何支持的方式来使用任何版本控制系统。
你应该向苹果file一个bug,请求对TFS的本地支持,或者一个支持Xcode的VCS插件系统。
无论如何,在短期内,我认为你不会找到一个令人满意的解决方案。
https://stackoverflow.com/questions/1334411
复制相似问题