ソースコードリポジトリへのアクセスを可能に


Xcode サーバは、ソースコードのリポジトリに含まれるプロジェクトで動作します。Xcode サーバは、2つの人気あるソース管理システムをサポートしています:Git と Subversion です。ボットは、リモートサーバーでホストされている Git と、Subversion リポジトリに接続されており、OS X サーバでホストされ設定されているレポジトリに接続することができます。


まだ Xcode サーバを設定していない場合は、OS X サーバのインストールおよび Xcode サーバの設定 を参照してください。



注意: Git と Subversion は、無料で、オープンソースのバージョン管理システムにはコードが付いています。これらのシステムの詳細については、以下のサイトを参照してください。


リポジトリの認証オプション


Xcode のボットは、SSH (セキュアシェル) または HTTPS (ハイパーテキスト転送プロトコルセキュア) の上の Git と Subversion プロジェクトにアクセスできます。一般的に、SSH は Git のプロジェクトのための好適なプロトコルであり、HTTPS は、Subversion のプロジェクトのために推奨されます。


SSH について


SSHは、資格情報と契約を暗号化し、それは常に HTTPS よりも一般的に簡単で、安全であり、SSL (Secure Sockets Layer) 証明書を必要としないためです。それは良く、安全な選択であり、あなたの組織が認証に SSH キーを使用する場合に特に便利です。ただし、SSH は、ネットワーク環境全体で HTTPS などのようにいつも容易に利用可能ではありません。


SSH 経由でアクセスするリポジトリは、次の方法で認証することができます。


注意: サードパーティのソリューションと Git のロールアカウントを使用して構成したサーバは、あなたがそのサーバーに有効なユーザー名とパスワードを持っている場合でも、常にユーザ名とパスワード認証による SSH 経由でのクローニングまたはリポジトリのチェックアウトをサポートしていません。このような状況では、HTTPS または SSH キーを持つ SSH が、一般的に必要とされます。


HTTPS について


HTTPS のプロトコルは設定が非常に簡単であり、ほとんどのネットワーク環境で動作するため、これは、ある程度の柔軟性を提供しています。HTTPS を使用すると、お使いの認証資格情報および取引は暗号化され、公共の認証局によって署名された有効な証明書が必要です。サーバの SSL 証明書を持っている場合は、HTTPS は良い、安全な選択です。しかし、Web サーバはそれを使用するため実行している必要があるため、それは SSH よりもわずかに多くの設定を必要とします。


HTTPS 経由でアクセスしたリポジトリは、以下の方法で認証することができます。


既知の問題: 時々、SSL を使用しない場合、HTTP 接続を介して、最小限のセキュリティを提供するように使用されるダイジェストの認証は、現在 Git リポジトリではサポートされていません。また、ローカルマシン上で信頼されている自己署名証明書は、サーバー上で認証されません。


読むことを推奨されるもの


SSH と HTTPS の詳細については、次のリソースを参照してください。


開発用の Mac からリモートリポジトリに接続する


リモートサーバー上に Git や Subversion リポジトリを使用しているプロジェクトがある場合は、開発用の Mac 上の Xcode での[Account(アカウント)] 設定でそれらの資格情報を格納できます。そうすれば、リポジトリにアクセスするたびに、資格情報を再入力する必要はありません。Xcode サーバーが、プロジェクトの統合を実行するためには、それはまた、そのソースコードリポジトリへのアクセス権を持っている必要があります。継続的統合を実行するために bot を設定 で説明したように、ボットを設定するときにこれらの資格情報を提供します。


開発用 Mac にリモートリポジトリの資格情報を追加するには


  1. 開発用 Mac 上で [Xcode] > [Preferences(環境設定)]を選択します。
  2. [Accounts(アカウント)] をクリックします。
  3. 追加ボタン(+)をクリックして、[Add Repository(リポジトリの追加)] を選択します。
  4. テキストフィールドに、リポジトリの URL(例えば、svn+ssh://svn.example.com/ProjectName または https://example.com/git/respository.git)を入力し、[Next(次へ)] ボタンをクリックします。
  5. [Account(アカウント)] 設定の[Repository(リポジトリ)] ペインでユーザー名とパスワードを入力します。


Xcode サーバで Git リポジトリをホストする


あなたのリポジトリが、リモートサーバー上でホストされていない場合は、Git リポジトリを作成し、共有するため OS X サーバと Xcode サーバを使用できます。あなたが開発者チームで作業している場合、彼らはまた、共同作業を強め、共有し、これらのリポジトリでのコード変更を管理できます。


ホストされているソースコードリポジトリを作成して、チームのメンバーがアクセスできるようにするには、OS X サーバと Xcode サーバを設定して下さい。


Xcode サーバーでリポジトリのアクセス権を設定するには


  1. サーバーアプリのサイドバーで[Service(サービス)] の一覧で、Xcode を選択します。

  2. リポジトリをクリックすると、このペインのようなものが表示されます:


  3. server_repository_tab_2x


  4. アクセスの下で、ホストされたリポジトリにアクセスするために使用されるプロトコルを設定するため、[Edit(編集)] ボタンをクリックします。


  5. server_repository_access_2x


    デフォルトでは、HTTPS が選択されています。


    また、SSH も選択することができます。SSH を選択した場合は、Xcode サーバは、SSH を使ってリモートログインを許可するかどうかを尋ねるダイアログが表示されます。[Allow(許可)] をクリックします。


  6. [Repository(リポジトリ)] ペインのアクセス領域で、ホストされたリポジトリを作成できるユーザーを選択するため、[Edit(編集)]ボタンをクリックします。


  7. server_repository_permissions_2x


  8. 、開発用 Mac の Xcode でのアカウント設定で、サーバの アカウントの資格情報を追加 します。(まだ行っていない場合)

あなたが HTTPS アクセスを許可する場合は、ホストされたリポジトリにアクセスするため誰もが HTTPS を使用すると Xcode で、証明書のダイアログが表示されます。開発用の Mac からリポジトリにアクセスするには、[Certificate(証明書)] ダイアログが表示されたら、[Show Certificate(証明書を表示)] をクリックして、[Always Trust(常に信頼)] オプションを選択して、[Continue(続行)] をクリックします。



website_certificate_notice_2x


あなたが開発者チームで作業する場合、彼らに (チームメンバーのため Xcode のサーバを設定 に記載されています) サーバ上のリポジトリにアクセスするためのアカウントを与えられます。


開発用の Mac からサーバーにローカルリポジトリのクローンを作成


開発用 Mac にローカル Git リポジトリを使用する場合は、それによってあなたのボットが、リポジトリを操作できるように、Xcode サーバをを実行しているサーバへのリポジトリをクローンする必要があります。


サーバを実行中の Xcode サーバにローカルリポジトリをクローンするには



  1. 開発用 Mac の上で、プロジェクトを開き、[Source Control(ソース管理)] > [ProjectName-BranchName(プロジェクト名ー分岐名)] > [Configure ProjectName(プロジェクト名構成)] を選択します。


  2. xcode_configure_repository_2x


  3. [Remote(リモート)] をクリックします。
  4. 追加ボタン(+)をクリックします。
  5. [Create New Remote(新しいリモート作成)] を選択します。


  6. xcode_create_remote_repository_2x


  7. Xcode サーバを実行している OS X サーバを選択します。
  8. リモートリポジトリの名前を入力します。


  9. xcode_create_remote_repository2_2x


    あなたがリポジトリを識別するのに役立つ任意の名前を使用してください。このリポジトリを選択する必要がある場合、この名前は、開発用 Mac のリモート一覧に表示されます。例えば、[プッシュ] を選択するか、[Source Control(ソース管理)] メニューから [Commit(コミットする)] どちらかを選べば、名前は、リモートリポジトリを指定することができるポップアップメニューに表示されます。


  10. [Create(作成)] をクリックします。

  11. クローンされたリポジトリは、OS X サーバの Xcode サーバのリポジトリのリストに表示されます。



    server_remote_repository_2x


  12. [Done(完了)] をクリックします。

  13. ローカルリポジトリがサーバにコピーされます。


開発者チームと作業する場合は、「チームメンバーのため Xcode のサービスを設定」で説明したように、彼らにリポジトリを共有するために、サーバ上にアカウントを与えることができるます。



プロジェクトを作成し、サーバ上のリポジトリをホスト


    開発用 Mac でプロジェクトを作成するときは、同時にサーバ上に直接リポジトリを作成することができます。


    Xcode サービスを実行中の OS X サーバの Git リポジトリを使用してプロジェクトを作成するには


    1. 開発用 Mac 上の Xcode の[Accounts(アカウント)] 設定で、サーバーのアカウントの資格情報を追加します(まだ行っていない場合)。

    2. デフォルトでは、Xcode サーバでは、ホストされたリポジトリはログインユーザーが作成することを許可します。Xcode で、[アカウント] 設定でサーバーのアカウントの資格情報を追加すると、サーバ上の Git リポジトリを作成するときに自動的にログインできるようになります。


    3. [File(ファイル)] > [New(新規)] > [Project(プロジェクト)]を選択します。
    4. プロジェクトのテンプレートを選択し、[Next(次へ)] をクリックします。
    5. プロジェクトのオプションを指定し、[次へ]をクリックします。
    6. プロジェクトのローカルの作業コピーの場所を指定します。
    7. [Source Control(ソース管理)] オプションでは、"Create git repository on(git リポジトリをオンに作成)" を選択します。
    8. リポジトリをホストするサーバを選択するように、ポップアップメニューを使用します。


    9. ChooseRemoteGit_2x


      サーバがリストに表示されない場合は、Xcode サーバの [リポジトリ] ペインに、リポジトリを作成する権限を持っているかどうかを確認するように見るか、サーバー管理者に問い合わせてください。Xcode サーバが設定されている方法により、ホストされたリポジトリは、ログインしたユーザーが誰でも、または指定したユーザーが作成することができます。


    10. [作成]をクリックします。

OS X サーバ上で、プロジェクトの名前は、Xcode サーバの[ホストされたリポジトリ] リストに表示されます。開発者チームと作業する場合、彼らにあなたのリポジトリを共有するためにアカウントを与えることができます。("チームメンバーのため Xcode のサービスを設定" で説明したように)



Xcode サーバ上で Git リポジトリを作成し、開発用 Mac からアクセス


また、Xcode サーバを実行している OS X サーバの共有可能な Git リポジトリを直接作成することができます。あなたのチームメンバーは、これらのリポジトリにプロジェクトやボットを指すことができます。


Xcode サーバを実行しているサーバ上で新しい Git リポジトリをホストするには


  1. サーバアプリのサイドバーの [Service(サービス)] 一覧で、Xcode を選択します。
  2. [Repository(リポジトリ)] をクリックしてください。
  3. [追加] ボタン(+)をクリックします。
  4. リポジトリの名前を入力します。


  5. server_create_repository_2x


    リポジトリを識別するのに役立つ任意の名前を使用してください。この名前は、サーバアプリの Xcode サーバ設定の[ホストされたリポジトリ]の一覧に表示され、アクセス URL の一部になります。


  6. SSH 経由でリポジトリにアクセスできるユーザーを識別するために、[編集]ボタンをクリックします。

  7. ローカルサーバまたはディレクトリにログインできるすべてのユーザーにアクセスを与えるために "ログインユーザー" を選択します。


    ローカルサーバ上またはディレクトリ内のユーザーのアクセスリストを設定するには、"一部のユーザーのみ" を選択します。読むことができるか、誰が読め、リポジトリに読み書きできるのが誰かを選択できます。


  8. HTTPS アクセスを有効にしたい場合は、"ログインしたユーザの読み書きを許可" チェックボックスを選択します。

  9. [作成]をクリックします。

  10. 新しいリポジトリは[ホストされたリポジトリ] の一覧に表示されます。後でユーザーのアクセス権限を変更したい場合は、[ホストされたリポジトリ] のリストからリポジトリを選択し、[編集]ボタンをクリックして下さい。


    その開発用 Mac 上の Xcode の[アカウント] 環境設定を使用して、その Mac にこのリポジトリの資格情報を追加することができます。開発者チームと作業する場合は、"チームメンバーのため Xcode のサービスを設定" で説明したように、彼らに、リポジトリを共有するために、サーバ上にアカウントを与えることができます。


ローカルの開発用 Mac 上に既存の Git リポジトリがある場合は、Xcode サーバを実行中の OS X サーバ内のリポジトリに接続することができます。


この方法では、コミットした後、サーバーに変更をプッシュすることができます。


開発用 Mac 上のプロジェクトに OS X サーバと Xcode サーバによってホストされた Git リポジトリを追加するには


  1. 開発用 Mac でプロジェクトを開き、[Source Control(ソース管理)] > [プロジェクト名-分岐名] > [プロジェクト名設定] を選択します。
  2. [Remote(リモート)]をクリックします。
  3. [追加]ボタン(+)をクリックします。
  4. [リモート追加] を選択します。


  5. xcode_add_remote_2x


  6. リモートリポジトリの名前とアドレスを入力してください。


  7. xcode_add_remote2_2x


    Xcode サーバ内のリポジトリの一覧にリモートリポジトリのアドレスを見つけることができます。

  8. [Add Remote(リモートの追加)] をクリックします。
  9. [Done(完了)] をクリックします。


サーバでホストされたリポジトリにコミットをプッシュ


サーバ上に Git リポジトリを使用できるように開発用 Mac を設定した後、コミット操作はローカルリポジトリに変更を加えます。全てのリモート Git リポジトリと同じように、サーバ上のリポジトリにコミットされた変更を加えるには、プッシュ操作を実行する必要があります。例えば、[Source Control(ソース管理)] > [Commit on your development Mac(開発用 Mac でのコミット)] を選択した場合、オプションの [Push to Remote(リモートへプッシュ)] を選択し、ポップアップメニューでリモートリポジトリを指定して、[Commit Files and Push(ファイルをコミットしプッシュ)] をクリックします。



xcode_commit_push_to_remote_2x


既存の Xcode プロジェクトに Git のサポートを追加


Xcode のワークスペースやプロジェクトを作成するときは、生成されたワークスペースのディレクトリに Git リポジトリを含むオプションがあります。そのオプションを選択しなかった場合は、ワークスペースのディレクトリは Git リポジトリを含まず、プロジェクイトは Xcode サーバと一緒に使えません。この問題を解決するには、手動でワークスペースディレクトリ内の Git リポジトリを初期化して下さい。


プロジェクトディレクトリ内で Git レポジトリを手動で初期化するには


  1. ターミナルアプリ内で、ワークスペースのディレクトリ内で git init コマンドを実行します。

    1. cd <workspace_directory_path>
    2. git init

  2. 必要に応じて、.gitignore ファイルを作成し、リポジトリから省略したい全てのファイルを追加します。

    1. cat > .gitignore
    2. <files_to_ignore>
    3. ^D # Control-D

  3. git add のコマンドでレポジトリ内で追跡したいファイルを指定します。

      git add <files>



  4. git commit のコマンドで、リポジトリにファイルを追加します。

    1. git commit -m "<workspace_directory> initial commit"


例えば、以下のコマンドは、(一部を除き)追跡されるディレクトリ内のファイルを識別し、新しく作成されたリポジトリにファイルを追加し、[スケッチ]ワークスペース·ディレクトリーの中の Git リポジトリを初期化します。


  1. hedy: Desktop $ cd Sketch
  2. hedy: Sketch $ git init
  3. Initialized empty Git repository in /Users/ernest/Desktop/Sketch/.git/
  4. hedy: Sketch $ cat > .gitignore
  5. .DS_Store
  6. xcuserdata
  7. ^D # Control-D
  8. hedy: Sketch $ git add .
  9. hedy: Sketch $ git commit -m "Sketch initial commit"
  10. [master (root-commit) db941e7] Sketch initial commit
  11. 73 files changed, 13157 insertions(+)
  12. create mode 100644 .gitignore
  13. create mode 100644 Arrow.tiff
  14. create mode 100644 Circle.tiff
  15. ...

サーバに開発用 Mac からローカルリポジトリをクローン で説明したように、Xcode サービスが、リポジトリを操作できるように、リポジトリをクローンします。





前:OS X サーバのインストールおよび Xcode サーバの設定
次:継続的統合を実行するために ボットを設定
目次
Xcode 9 の新機能

XCode:継続的統合
  • OS X サーバのインストールおよび Xcode サーバの設定
  • OS X サーバと Xcode をダウンロード
    Xcode サーバを設定<
    チームメンバーのため Xcode サーバを設定
    Xcode サーバにアクセスするように開発用の Mac を設定
  • ソースコードリポジトリへのアクセスを可能に
  • リポジトリの認証オプション
  • SSH について
    HTTPS について
    読むことを推奨されるもの
    開発用の Mac からリモートリポジトリに接続する
  • Xcode サーバで Git リポジトリをホストする
  • 開発用の Mac からサーバにローカルリポジトリのクローンを作成
    プロジェクトを作成し、サーバ上のリポジトリをホスト
    Xcode サーバ上で Git リポジトリを作成し、開発用 Macからアクセス
    サーバーでホストされたリポジトリにコミットをプッシュ
    既存の Xcode プロジェクトに Git のサポートを追加
  • 継続的統合を実行するためにボットを設定
  • ビルドスキームを共有
    統合の実行のためボットを作成する
    ベストプラクティスに従う
  • レポートナビゲータからのボットの管理および監視
  • レポートナビゲータで bot を管理
    ボットビューアで ボットの監視と管理
    統合ビューアでの統合の詳細レビュー
  • Web ブラウザからボットを監視
  • ボットのウェブサイトを表示
    ボットの Web サイトからボットを監視
    ボットの Web サイトからXcode のボットを開く
    ボットのウェブサイトから統合アセットをダウンロード
    ボットの Web サイトから iOS のプロダクトをインストール
    大画面でボットを表示
    マニュアル改訂履歴












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ












    トップへ