2011-01-20 12 views
6

私はiPhoneアプリケーション(約7人)を開発しているチームで働いています。私たちはiPhoneコードのソースコード管理にSVNを使用し、xcodeプロジェクトファイルとiPhone nibファイルとの競合問題に取り組んでいます。私はこの問題について質問されていると思う:How to merge conflicts (file project.pbxproj) in Xcode use svn?。私は、誰かがこれまでに満足のいく解決法を考え出したことがあるかどうか尋ねたい。私たちのチームはかなりの規模(7人)であるため、コードを変更するたびにxcodeプロジェクトファイルの競合を手動で解決するか、新しいオブジェクトをnibファイルに追加することは生産性を大幅に低下させます。アップルのエンジニアは、自分のiPhoneアプリを書いたときにこの問題について考えてきましたか? GoogleとBingを使って満足のいくソリューションを探していましたが、まだ見つかりませんでした。svn conflictチーム内で作業中のxcodeプロジェクトファイル

ありがとう、

答えて

0

SourceGear DiffMergeをインストールしてみてください。これは、変更をマージする方がはるかに簡単なマージツールです。これも参照してくださいblog post DiffMergeを使用するようにXCodeを構成するについて

+0

ブログの投稿リンクが機能していません... – damithH

3

これは間違いなくxcodeの大きな欠陥です。私は、同様のサイズのチームにだとここで私はできるだけ痛みのないような処理をするために何をすべきかです:

SVNの更新(いつものようにもチェックインする前にこれを行う):

  1. のXcodeを終了します。これを行う最も簡単な方法は、Alfredを使用し、 "forcequit xcode"を入力することです
  2. "svn up"をプロジェクトフォルダのコマンドラインから入力してください
  3. プロジェクトファイルとのマージの競合がある場合は、 emacsまたは何でも
  4. "======"を検索するとマージ競合が見つかります。その行を削除し、 "< < < <鉱山"と ">>>>"行
  5. &終了を削除します。 "r"を押してプロジェクトを解決済みとしてマークします。
  6. 再オープンプロジェクト - あなたは(私は、この日に数回を行う)ダウン分の下に、このプロセスを取得することができます実際のビットで

「MyProject.xcodeproj /を開きます」。

NIBファイルの場合は、他の誰かが作業している間は作業しないでください。それらをマージする実際の方法はありません。変更をすばやく行い、すぐにチェックインしてください(2人が同時にNIBファイルを操作する必要はほとんどありません)。あまり複雑でないビューの場合は、プログラムでレイアウトしてください。

関連する問題