Xcode4 で Git サーバーから取得したワーキングコピーを参照する - Git による版管理環境を構築する

SPECIAL


Xcode4 で Git サーバーから取得したワーキングコピーを参照する

Mac OS X の Xcode4 から SSH 経由で Git リポジトリへ接続して、ワーキングコピーを取得する方法は Xcode4 で Git サーバーのリポジトリを参照する で記した感じになりますが、そのようにして、またはターミナルからコマンドで直接取得したワーキングコピーを Xcode4 に登録するには、次のようにします。

Xcode4 を起動したら、アップルメニューの【Window】から【Organizer】 を起動します。

Organizer の 【Repositories】を選択したら、左下の [ + ] ボタンをクリックすると、リポジトリの追加メニューが表示されます。

ここで【Add Working Copy...】を選択すると、フォルダーを選択する画面が表示されます。

ここで、Git リポジトリから取得 (clone) 済みのワーキングコピーが保存されたフォルダーを選択してあげることで、そのリポジトリのワーキングコピーが Xcode4 に登録されました。

どのリポジトリのワーキングコピーかといった情報は "Remotes" のところでも確認できるように、ワーキングコピーが情報として持っているので、このまま引き続き、Xcode4 からサーバーへ Push 操作を行ったりなど、できるようになっているようでした。

ただ、Xcode4 から Push 操作を行うためには、そのリポジトリ内のプロジェクトを Xcode4 で開いておく必要があるようです。

プロジェクトを開いている状態で、アップルメニューの【File】から【Source Controll】内の【Push...】を選択します。

 すると、どのリモートリポジトリのブランチへ Push するかを尋ねられるので、目的のリモートリポジトリのブランチを選択して【Push】ボタンをクリックします。

これで、リモートリポジトリの指定したブランチにローカルリポジトリの内容をアップロードすることができました。

 

ただしここで、次のようなエラーメッセージが表示される場合がありました。

The operation could not be performed because you do not have permission to modify "branch2".

これは、リモートリポジトリへの接続に使用しているアカウントが、サーバー側にブランチを作成する権限を持っていないために発生するエラーの様子です。

たとえば "git init --bare --shared" で初期化したリポジトリであっても、そのリポジトリファイルの所有者でなければブランチに書き込む権限を持っていなかったため、このようなエラーが発生しているようでした。

そのリポジトリファイルに設定されているグループのメンバーにもリポジトリの作成権限を与えたい場合には、加えてサーバー側で、そのリポジトリが格納されているディレクトリに対して "chmod -R g+w ."を実行することで、対応できるようでした。

 

目次