Git でコードを共有する
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Git リポジトリを使用するときに、Azure DevOps 内の他のユーザーとコードを共有します。
前提条件
Azure DevOps に 組織 と プロジェクト が必要です。 プロジェクトを作成すると、Azure DevOps によって Repos に空のリポジトリが自動的に作成されます。
1. Git コマンドライン ツールをインストールする
次のいずれかの Git コマンドライン ツールをインストールします。
- Git for Windows と Git Credential Manager。
- macOS または Linux 用の Git。 macOS および Linux の場合は、SSH 認証を構成することをお勧めします。
2. リポジトリをコンピューターに複製する
Git リポジトリを操作するには、それをコンピューターに複製して、リポジトリの完全なローカル コピーを作成します。 コードは、いくつかの場所のいずれかに存在する可能性があります。
シナリオに適用できる次の手順を完了します。
- まだコードがない場合は、最初にプロジェクトに新しい Git リポジトリを作成してから、次の手順を完了します。
- コードが GitHub リポジトリや別の Azure Repo インスタンスなどの別の Git リポジトリにある場合は、それを新規または既存の空の Git リポジトリにインポートしてから、次の手順を完了します。
- コードがローカル コンピューター上にあり、まだバージョン管理されていない場合は、プロジェクトに新しい Git リポジトリを作成するか、既存のリポジトリにコードを追加します。
Web ブラウザーから、組織のチーム プロジェクトを開き、[Repos>Files] を選択します。
[複製] を選択します。
URL をコピー します。
Git コマンド ウィンドウを開きます (Git for Windows の Git Bash)。 リポジトリのコードをコンピューターに格納するフォルダーに移動し、実行し
git clone
、前の手順で複製 URL からコピーしたパスを実行します。 次の例を参照してください。git clone https://FabrikamFiber01@dev.azure.com/FabrikamFiber01/FabrikamFiber01-01/_git/FabrikamFiber01-01
Git は、すべての コミットと ブランチ を含むコードのコピーをリポジトリから新しいフォルダーにダウンロードして操作できるようにします。
クローンしたリポジトリにディレクトリを切り替えます。
cd fabrikam-web
ブランチで動作するには、このコマンド ウィンドウを開いたままにしておきます。
3. ブランチで作業する
Git ブランチは、 プロジェクトで行われている他の作業から変更を分離します。 作業するすべての機能または修正に新しいブランチを使用する Git ワークフローを使用することをお勧めします。 この例では、ブランチ users/jamal/feature1
を使用します。
コマンドを使用してブランチを
branch
作成します。git branch users/jamal/feature1
このコマンドは、新しいブランチの参照を Git に作成します。 また、親コミットへのポインターを作成して、ブランチにコミットを追加するときに Git が変更履歴を保持できるようにします。
以前に複製したリポジトリを使用している場合は、新しいブランチを作成する前に、適切なブランチ (
git checkout main
) をチェックアウトし、最新の状態であることをgit pull origin main
確認します。そのブランチに切り替えるために使用
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. コードを操作する
次の手順では、コンピューター上のファイルに変更を加え、ローカルで変更をコミットしてから、サーバーに格納されているリポジトリにコミットをプッシュします。
リポジトリを複製したコンピューター上のフォルダーを参照し、任意のエディターでファイルを開
README.md
き、変更を加えます。 次に、 ファイルを保存 して閉じます。Git コマンド ウィンドウで、次のコマンドを
contoso-demo
入力してディレクトリに移動します。cd contoso-demo
Git コマンド ウィンドウで次のコマンドを入力して、変更をコミットします。
git add . git commit -m "My first commit"
このコマンドは
git add .
、新しいファイルまたは変更されたファイルをステージングしgit commit -m
、指定したコミット メッセージを使用してコミットを作成します。間違ったブランチに変更をコミットしないように、コミットする前に作業しているブランチを確認します。 Git は常に、現在のローカル ブランチに新しいコミットを追加します。
変更をサーバー上の 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 を使用して、進行中の作業をレビューし、変更に関する早期のフィードバックを得ます。 プル要求はいつでも破棄できるため、変更をマージするコミットメントはありません。
次の例は、プル要求を作成して完了する基本的な手順を示しています。
Web ブラウザーで組織のチーム プロジェクトを開き、[Repos>Files] を選択します。 クローン URL を取得した後もブラウザーを開いたままにしておいた場合は、それに切り替えることができます。
[ファイル] ウィンドウの右上隅にある [プル要求の作成] を選択します。 今すぐユーザー/jamal/feature1 を更新したなどのメッセージが表示されない場合は、ブラウザーを更新します。
新しいプル要求は、ブランチを既定のブランチにマージするように構成されています。この例
main
では 、 タイトルと説明には、コミット メッセージが事前に入力されています。レビュー担当者を追加し、作業項目を pull request にリンクできます。
[新しいプル要求] ウィンドウの下部にある pull request に含まれるファイルを確認できます。
[作成] を選択します
[概要] タブから pull request の詳細を表示します。また、他のタブから pull request で変更されたファイル、更新、コミットを表示することもできます。
[完了] を選択して、プル要求の完了プロセスを開始します。
[マージの完了] を選択してプル要求を完了し、コードをブランチに
main
マージします。Note
この例では、プル要求を作成して完了する基本的な手順を示します。 詳細については、「プル リクエストの作成、表示および管理」を参照してください。
これで変更がブランチにmain
マージされusers/jamal/feature1
、リモート リポジトリでブランチが削除されます。
履歴を表示する
Web ポータルに戻り、[コード] ページから [履歴] を選択して新しいコミットを表示します。
[ファイル] タブに切り替え、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
、そのブランチのローカル コピーを削除します。