38

この質問はまだ多くの支持を得ています。Update3 を見てください。 賛成票を投じ、コメントし、回答したら、レーダーを提出してください

nib / xib を表示すると、ファイルが変更され、変更をコミットするか、変更を元に戻す必要があります。マージの競合が発生するまで、これは問題ではありません。

詳細: 私は 5 人の iOS 開発者のチームで働いており、XCode の最後のいくつかのバージョンで、.xib / nib ファイルを誰かが (何も変更せずに) 開いたときに、変更/修正されるという問題が発生しています。

1 人の開発者が「それをねじ込んで、xcode が行う変更をチェックインさせてください」と考えてチェックインすると、それだけでは終わりません。2 つの異なるマシン (XCode と MacOS のバージョンが同じ) 上の同じファイルは、別の開発者がその nib を表示すると、再び変更されます。

.xib ファイルで通常変更されるのはこれです

    <key>com.apple.ibtool.document.version-history</key>
<dict>
    <key>interface-builder-version</key>
    <dict>
        <key>com.apple.InterfaceBuilderKit</key>
        <string>2844</string>
        <key>macosx.version</key>
        <string>12C60</string>
    </dict>
</dict>
<key>com.apple.ibtool.document.warnings</key>
<dict/>

ただし、それ以外にも、.xib ファイル内の既存のキーと値のペアを変更または移動します。

SO と Google でよく検索しましたが、この問題に関する投稿はあまり見たことがありません。

すべての nib を iPhone5 の画面に対応するようにアップグレードしたとき、マージの競合という悪夢に見舞われました。それ自体はそれほど複雑ではありませんでしたが、ドキュメントのバージョン管理のために大量のマージの競合が発生しました。

理解できないコードを削除すると、ペン先を開こうとしたときに xcode がクラッシュしました。(以前のものに戻すことで、今のところこれを修正しました)

この問題を回避する方法についてアドバイスをいただければ幸いです。

更新: これはまだ解決されておらず、まだ頻繁に賛成票を獲得していることに気付きました。興味があるのですが、ストーリーボード プロジェクトのいずれかで同じ問題が発生していますか? (私はまだ絵コンテに取り組んでいません)。

更新 2: 同じ問題が発生しているすべての人に、既存のレーダーがあるという応答があったとしても、レーダーを提出してください。それは問題をトップに押し上げるのに役立ち、XCode の神々はその時だけ問題に対処します。

Update3: このスレッドにはまだかなりの数の賛成票が寄せられており、Apple のバグ レポートはまだ公開されていません。したがって、この質問に賛成票を投じた後、質問で言及した詳細をレーダーに提出してください(および/または独自の説明を追加してください)

Update4: この質問にはまだ多くの賛成票が寄せられています。Update3 を見てください。賛成票を投じ、コメントし、回答したら、レーダーを提出してください

Update5: WWDC 2014 での Apple エンジニアからの情報によると、この問題は Xcode6 で修正されています。これが修正されたことを確認したら、この質問を更新します (おそらく閉じます)。

Update6: これが修正されることを期待しています。これは、WWDC2015 で (そこに行くことを知っている人を通して) 尋ねます。WWDC チケットを手に入れた幸運な人たちが、WWDC 2015 で同じことができるといいですね。

Update7: Xcode 7 がここにあり、このバグもあります :( 元のレーダー レポート (11533872) はまだ開いています

4

2 に答える 2

2

Xcode のバージョン 4.6.3 では、この問題が解決されています。ただし、コメントにあるように、すべて同じバージョンを実行する必要があります。4 人の開発者が 4.6.3 を使用しており、1 人が以前のバージョンを使用している場合、その開発者は同じ問題を経験します。ただし、その変更をコミットしない場合、他のユーザーには影響しません。

影響を受ける 2 つの Xib キーは次のとおりです。

<string key="IBDocument.AppKitVersion">1187.39</string>
<string key="IBDocument.SystemVersion">12E55</string>

要するに、チームの全員に Xcode 4.6.3 にアップデートしてもらいます。

于 2013-06-25T10:56:13.633 に答える
1

XIB の「ドキュメントのバージョン管理: 開発」設定を更新してみてください。

Xcode: File Inspector: Interface Builder Document: Document Versioning: Development

少なくとも「Interface Builder 3.1」に。

于 2013-02-26T10:57:07.990 に答える