2009-08-26 15 views
6

私は、TFSをiPhone開発用のソースコードリポジトリとして使用する方法に苦しんでいました。TFSをiPhone開発用に使用するにはどうすればよいですか?

私の上司は、Subversion(またはGodがPerforceを禁止している)を使用させることはありません。そのため、私はTFSソース管理に固執していました。

解決策は、MacをTFSにブリッジするツールを購入することです。私はここで宣伝するつもりはありませんが、Mac OS X用のTeamprise Client SuiteはMac OS XとTFSの間のブリッジです。

標準のチェックインと開発者のワークフローでは、XcodeとTFSの統合はありません。 Teamprise Explorerクライアントを使用して手動ですべて実行する必要があります。

ビルドでは、AutomatorとTeamprise Command Lineクライアントがトリックを行うことが分かります。

XFSとXFSのブリッジがありますか? iPhoneの開発にはどのようなソースコード管理システムを使用していますか?

私の鍵は、Automatorワークフローに埋め込まれた次のbashスクリプトです。

%1 =コードをプルするローカルフォルダ。 %2 =プルを行うプロジェクト名。

このスクリプトは、パブリックまたは文書化されていない、内部のXcodeは異なるバージョン管理システムをサポートするためのプラグインシステムを使用している間のTeampriseコマンドラインクライアントが〜/のTeamprise

PATH="$PATH:~/Teamprise:~/Teamprise/lib" 

cd "$1" 
mkdir "$1/logs" 

tf workspace -delete BuildScript -server:http://TFSServer -login:[email protected],password >> $1/logs/wsdelete1.log 

tf workspace -new BuildScript -server:http://TFSServer -login:[email protected],password >> $1/logs/wscreate.log 

tf workfold -map "$/TFSRoot" . -workspace:BuildScript -server:http://TFSServer -login:[email protected],password >> $1/logs/workfold.log 

tf get "$/TFSRoot/$2" -all -recursive -server:http://TFSServer -login:[email protected],password >> $1/logs/get.log 

tf workspace -delete BuildScript -server:http://TFSServer -login:[email protected],password >> $1/logs/wsdelete2.log 

#pump the tfs landing folder to the next step in the Automator script. 
echo $1/Projects/$2 
+0

私はPerforceとTFSが共通の祖先を共有していることを理解しています。それが慰めであれば –

+0

質問がありますか?私はそれを見ることができない! –

+1

タイトルにあります – Daniel

答えて

7

Louisと書いてありますが、XCodeでは現在、私たちがやりたいことであるTFSの統合を提供するために、私たちのために一般公開されているプラ​​グインモデル(Teamprise)を提供していません。

私たちは、PERFORCEコマンドラインになり、代わりにTFSと話をするなど、いくつかのハッキングを実験しましたが、これらの内部的な概念証明はこれまでのところうまく機能しませんでした。理想的には何らかの形でワークアイテムトラッキングをリンクして、チェックインをバグなどに関連付けることができます。

今日、Teampriseを使用してXCodeからTFSに話をしているお客様の大半は、スタンドアロンUIツール(Teamprise Explorer)、またはtf command lineに接続するようにAutomatorアクションを実行しています。

これは素晴らしい経験ではないことに謝罪します。私が示唆できるのは、SCMシステムがXCodeにフックするためのプラグインモデルを提供することです。file a bug with Appleです。重要な開発者の需要がある場合は、私たちが要求しているだけでなく、より多くの運を得てくれることを願っています。

+0

Teamprise側の説明に感謝します。私はこれを答えとしてマークし、Appleにもバグを報告します。 私は、私のニーズを満たしており、機能の量があれば、信じられないほど安定している、Teampriseスイート(もう一度、宣伝しようとしていない)に非常に満足しています。 私のWWDC 2009の経験に基づいて、私はXcodeチームへのこのリクエストが耳にかからないと感じています。 Xcodeソースコードコントロールプラグインモデルは、開発者が超安定なiPhone/Mac OS Xアプリケーションを作成できるツールを作成するための他のIDE優先順位ほど重要ではありません。 – Batgar

+0

XCodeの可能性について私は同意します - しかし、私たちは尋ねないと:-) XCodeサポートを追加することは、私たちがやりたいことです。私たちはそれを追加する:-) –

+0

私はそれに投票しました! (バグが報告されました) –

3

にインストールされている前提としています。いくつかのコマンドラインスクリプトの実行のような最小限のサポートの他に、Xcodeが同梱されているものを除き、バージョンコントロールシステムを使用する方法はサポートされていません。

あなたはfile TFSのネイティブサポート、またはXcodeのサポートされているVCSプラグインシステムを求めているAppleのバグがあります。

とにかく、短期的には私はあなたの問題に対する満足のいく解決策を見つけることはできないと思います。

3

TFSサーバーと統合する必要がある場合は、SVNBridgeを使用し、Xcodeの組み込みSubversion機能を使用してブリッジに接続するのが最善の方法です。

また、初めてVisualSVNサーバーをインストールすると、基本インストールでは10分足らず、10人ほどのユーザーが構成され、当社のルート証明書で署名されたSSL証明書が取得されました。試してみてください、本当に簡単でした。

+0

私はTFSウィザードの内部チームを持っています。私が展開、保守、バックアップ、および別のSVNサーバーを追跡することについて言及すれば...うまくいくでしょう。 Teampriseベースのソリューションは開発者に仕事の負担をかけるが、動く部品はほとんどありません。 – Batgar

+0

これは意味があります。アドオンのSVNサービスを追加するだけで、より多くのメンテナンスを行うつもりです。 – rpetrich

関連する問題