Git でコードを共有する

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Git リポジトリを使用するときに、Azure DevOps 内の他のユーザーとコードを共有します。

前提条件

Azure DevOps に 組織プロジェクト が必要です。 プロジェクトを作成すると、Azure DevOps によって Repos に空のリポジトリが自動的に作成されます。

1. Git コマンドライン ツールをインストールする

次のいずれかの Git コマンドライン ツールをインストールします。

2. リポジトリをコンピューターに複製する

Git リポジトリを操作するには、それをコンピューターに複製して、リポジトリの完全なローカル コピーを作成します。 コードは、いくつかの場所のいずれかに存在する可能性があります。

  1. シナリオに適用できる次の手順を完了します。

    • まだコードがない場合は、最初にプロジェクトに新しい Git リポジトリを作成してから、次の手順を完了します。
    • コードが GitHub リポジトリや別の Azure Repo インスタンスなどの別の Git リポジトリにある場合は、それを新規または既存の空の Git リポジトリにインポートしてから、次の手順を完了します。
    • コードがローカル コンピューター上にあり、まだバージョン管理されていない場合は、プロジェクトに新しい Git リポジトリを作成するか、既存のリポジトリにコードを追加します。
  2. Web ブラウザーから、組織のチーム プロジェクトを開き、[Repos>Files] を選択します。

    リポジトリとファイルが強調表示されているプロジェクトのスクリーンショット。

  3. コード ウィンドウの右上隅にある [複製] を選択し、URL をコピーします。

    [コピー] アイコンが強調表示されているプロジェクトのスクリーンショット。

  4. Git コマンド ウィンドウを開きます (Git for Windows の Git Bash)。 リポジトリのコードをコンピューターに格納するフォルダーに移動し、実行しgit clone、前の手順で複製 URL からコピーしたパスを実行します。 次の例を参照してください。

    git clone https://FabrikamFiber01@dev.azure.com/FabrikamFiber01/FabrikamFiber01-01/_git/FabrikamFiber01-01
    

    Git は、すべての コミットブランチ を含むコードのコピーをリポジトリから新しいフォルダーにダウンロードして操作できるようにします。

  5. クローンしたリポジトリにディレクトリを切り替えます。

    cd fabrikam-web
    

    ブランチで動作するには、このコマンド ウィンドウを開いたままにしておきます。

3. ブランチで作業する

Git ブランチは、 プロジェクトで行われている他の作業から変更を分離します。 作業するすべての機能または修正に新しいブランチを使用する Git ワークフローを使用することをお勧めします。 この例では、ブランチ users/jamal/feature1を使用します。

  1. コマンドを使用してブランチを branch 作成します。

    git branch users/jamal/feature1
    

    このコマンドは、新しいブランチの参照を Git に作成します。 また、親コミットへのポインターを作成して、ブランチにコミットを追加するときに Git が変更履歴を保持できるようにします。

    以前に複製したリポジトリを使用している場合は、新しいブランチを作成する前に、適切なブランチ (git checkout main) をチェックし、最新の状態 (git pull origin main) になっていることを確認します。

  2. そのブランチに切り替えるために使用 checkout します。

    git checkout users/jamal/feature1
    

    Git は、コンピューター上のファイルを、チェックアウトブランチの最新のコミットと一致するように変更します。

    ヒント

    コマンド ラインからブランチを作成すると、ブランチは現在チェックアウトブランチに基づいています。 リポジトリを複製すると、既定のブランチ (通常main) がチェックされます。複製したため、ローカル コピーに最新のmain変更が加えられます。

    git checkout main
    git pull origin main
    git branch users/jamal/feature1
    git checkout users/jamal/feature1
    

    前の例の最初の 3 つのコマンドを次のコマンドに置き換えることができます。このコマンドでは、最新mainのブランチに基づいて新しいブランチがusers/jamal/feature1作成されます。

    git pull origin main:users/jamal/feature1
    

    前のセクションで使用した Git Bash ウィンドウに戻ります。 次のコマンドを実行して、メイン ブランチに基づいて新しいブランチを作成してチェックします。

    git pull origin main:users/jamal/feature1
    git checkout feature1
    

4. コードを操作する

次の手順では、コンピューター上のファイルに変更を加え、ローカルで変更をコミットしてから、サーバーに格納されているリポジトリにコミットをプッシュします。

  1. リポジトリを複製したコンピューター上のフォルダーを参照し、任意のエディターでファイルを開 README.md き、変更を加えます。 次に、 ファイルを保存 して閉じます。

  2. Git コマンド ウィンドウで、次のコマンドを contoso-demo 入力してディレクトリに移動します。

    cd contoso-demo
    
  3. Git コマンド ウィンドウで次のコマンドを入力して、変更をコミットします。

    git add .
    git commit -m "My first commit"
    

    このコマンドはgit add .、新しいファイルまたは変更されたファイルをステージングしgit commit -m、指定したコミット メッセージを使用してコミットを作成します。

    間違ったブランチに変更をコミットしないように、コミットする前に作業しているブランチを確認します。 Git は常に、現在のローカル ブランチに新しいコミットを追加します。

  4. 変更をサーバー上の Git リポジトリにプッシュします。 Git コマンド ウィンドウに次のコマンドを入力します。

    git push origin users/jamal/feature1
    

これで、コードは、リモート リポジトリという名前users/jamal/feature1のブランチで共有されます。 作業ブランチからブランチに main コードをマージするには、pull request を使用します。

5. 変更を pull request とマージする

pull request では、コードのレビューとマージが組み合わせられて、1 つのコラボレーション プロセスになります。 ブランチのバグまたは新機能の修正が完了したら、新しい pull request を作成します。 チームのメンバーを pull request に追加して、変更を確認して投票できるようにします。 pull request を使用して、進行中の作業をレビューし、変更に関する早期のフィードバックを得ます。 プル要求はいつでも破棄できるため、変更をマージするコミットメントはありません。

次の例は、プル要求を作成して完了する基本的な手順を示しています。

  1. Web ブラウザーで組織のチーム プロジェクトを開き、[Repos>Files] を選択します。 クローン URL を取得した後もブラウザーを開いたままにしておいた場合は、それに切り替えることができます。

  2. [ファイル] ウィンドウの右上隅にある [プル要求の作成] を選択します。 今すぐユーザー/jamal/feature1 を更新したなどのメッセージが表示されない場合は、ブラウザーを更新します。

    pull request を作成する

    新しいプル要求は、ブランチを既定のブランチにマージするように構成されています。この例mainでは 、 タイトルと説明には、コミット メッセージが事前に入力されています。

    New pull request

    レビュー担当者を追加し、作業項目を pull request にリンクできます。

    [新しいプル要求] ウィンドウの下部にある pull request に含まれるファイルを確認できます。

    pull request 内のファイル

  3. [作成] を選択します

    [概要] タブから pull request の詳細を表示します。また、他のタブから pull request で変更されたファイル、更新、コミットを表示することもできます。

  4. [完了] を選択して、プル要求の完了プロセスを開始します。

    Pull request

  5. [マージの完了] を選択してプル要求を完了し、コードをブランチにmainマージします。

    pull request を完了する

    Note

    この例では、プル要求を作成して完了する基本的な手順を示します。 詳細については、「プル要求の作成、表示、管理」を参照してください

これで変更がブランチにmainマージされusers/jamal/feature1、リモート リポジトリでブランチが削除されます。

履歴を表示する

  1. Web ポータルに戻り、[コード] ページから [履歴] を選択して新しいコミットを表示します。

    [履歴] が強調表示されている Web ポータルのスクリーンショット

  2. [ファイル] タブに切り替え、README ファイルを選択して変更を表示します。

    README ファイルのスクリーンショット

クリーンアップ

Git Bash コマンド プロンプトに戻り、次のコマンドを実行してブランチのローカル コピーを削除します。

git checkout main
git pull origin main
git branch -d users/jamal/feature1

このアクションにより、次のタスクが完了します。

  • このコマンドを git checkout main 実行すると、ブランチに切り main 替えます。
  • このコマンドはgit pull origin main、変更やマージされた事実users/jamal/feature1など、メイン ブランチ内の最新バージョンのコードをプルします。
  • このコマンドは git branch -d users/jamal/feature1 、そのブランチのローカル コピーを削除します。

次のステップ