web-dev-qa-db-ja.com

xcodeはプロジェクトからリポジトリを削除します

私のxcodeプロジェクトには、[ソース管理]メニューの下に2つのリポジトリがリストされています。それらの1つは古いプロジェクトのリポジトリであり、現在のプロジェクトに関連付けることはできません。しかし、プロジェクトから削除する方法がわかりません。

注:このリポジトリはすでにオーガナイザーから削除されています。

Screenshot

どんな助けでも大歓迎です。

22
bbrame

.xccheckoutファイルを手動で編集してこれを行いました。

これがあなたのために働くはずのステップです:

  1. xcodeを終了し、プロジェクトファイルのバックアップを作成します。
  2. finderで、プロジェクトファイルを右クリックし、[パッケージの内容を表示]を選択します
  3. project.xcworkspaceファイルを右クリックし、[パッケージのコンテキストを表示]を選択します
  4. xcshareddataという名前のフォルダーに、拡張子.xccheckoutのファイルがあります(メインプロジェクトファイルと同じ名前である必要がありますが、拡張子は.xccheckoutです)。
  5. このファイルのバックアップを作成します
  6. お気に入りのプレーンテキストエディタで.xccheckoutファイルを開きます。これはplistです。
  7. IDESourceControlProjectWCConfigurationsキーを見つけて、削除するリポジトリの名前が付いている<dict>を探します。
  8. 同じ<dict>にキーIDESourceControlWCCIdentifierKeyがあり、その値にはUUIDのような識別子が含まれています。この文字列はリポジトリを識別します。
  9. iDをキーとして持つキー/文字列のペアをファイル全体で検索します。これらのペアをすべて削除します。
  10. <dict>を削除します
  11. ファイルを保存する
  12. xcodeでプロジェクトを再度開き、すべてが正常であることを確認します。

それでも表示される場合は、プロジェクト内のファイルが古いリポジトリのディレクトリにないことを確認してください(絶対ファイル参照を介して)。これは、プロジェクトファイル内にあるメインファイルproject.pbxprojを開くことで調査できます。

古いリポジトリのルートフォルダ(Finder内)の名前を一時的に変更してこれをテストすることもできます。リポジトリが[ソース管理]メニューに表示されなくなった場合は、プロジェクト内にその古いリポジトリにあるファイルがあります。リポジトリ。

31
g-mark
  1. 閉じるXCode
  2. オープンターミナル
  3. プロジェクトのルートディレクトリに移動します。
  4. find ./ -name .svn -exec rm -rf {} \;と入力します。
  5. プロジェクトを開きます。

プロジェクトはすべてのリポジトリから切断する必要があります。これで、Source Control -> Configure Projectを介してプロジェクトを目的のリポジトリに接続できます。

[〜#〜] note [〜#〜]:このコマンドは、拡張子が.svnのすべてのファイル名を検索し、それらすべてを(再帰的かつ強制的に)削除します。

[ソース管理]-> [チェックアウト]に移動した後、ダイアログを使用した経験があります。アカウントを削除/編集するだけです。

Xcode->設定->アカウント->(編集または削除を行います)

それがあなたの問題を解決するかどうかは100%確信していませんが、試してみる価値はあります。ちなみに、私はXcode6ベータ版を使用しています。

実際、何もロードせずにXcodeを起動し、プロジェクトの新しいコピーを新しいワークスペースフォルダーにチェックアウトすると、プロジェクトのローカルコピーから無関係なリポジトリ情報が自動的に削除されます。

また、Xcode->ソース管理->%Repository%->構成%ProjectName%に移動し、ブランチパネルで作業ブランチを選択することをお勧めします-トランク|タグ|ブランチフォルダーの場所が正しく初期化されていることを確認するためです。 ([完了]をクリックすると、[ソース管理]メニューの更新にリポジトリメニュー項目が表示され、サブメニューが展開されてより多くのオプションが表示されます)。

Xcodeが行った変更を同じリポジトリにコミットするのは簡単なことです。差分ツールは、変更された.xccheckoutファイルのXML行を示している必要があります。

0
cubusaddendum

古いディレクトリからsvnファイルを手動で削除する必要があります。これは、svnコマンドを使用して実行されます。以下のコマンドを見つけることができます。 フォルダのSubversionコントロールを削除するにはどうすればよいですか?

0
Nareshkumar