> ## Documentation Index
> Fetch the complete documentation index at: https://docs.replit.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Gitの基本

> ブランチ、コミット、プルリクエスト、マージなど、Replitでのリポジトリ作業の背景にあるGitの概念を学び、変更がレビューされるまでの流れを把握しましょう。

Replitでコントリビュートするために、Gitのコマンドを覚える必要はありません。ここで紹介する概念は、変更がどこに反映され、チームがどのようにレビューするのかを理解するのに役立ちます。

## Gitとは

Gitは、コードの変更を時系列で追跡します。**リポジトリ**には、コードとその履歴が含まれます。[GitHub](https://github.com)と[GitLab](https://gitlab.com)はリポジトリをホストし、コラボレーション用のツールを提供するサービスであり、Git自体ではありません。

Replitで開発用のコピーを編集しても、共有リポジトリがすぐに変更されるわけではありません。

詳細: [GitHub DocsのAbout Git](https://docs.github.com/en/get-started/using-git/about-git)。

## ブランチ

ブランチは、独立した作業の流れです。コントリビューションはブランチ上で行うことで、リポジトリのデフォルトブランチ(多くの場合`main`)に取り込まれる前に、チームがレビューできます。

たとえば、デモの見出しの変更は専用のブランチ上に置いておき、デフォルトブランチは変更しないままにできます。

詳細: [GitHub DocsのAbout branches](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches)。

## コミット

コミットは、一連の変更をその説明メッセージとともにGitの履歴に記録します。**プッシュ**すると、ローカルのコミットがリモートリポジトリに送信されます。

この例では、1つのコミットで新しい見出しを記録できます。その後のコミットで、レビュー中に依頼された修正を記録できます。

詳細: [GitHub DocsのAbout commits](https://docs.github.com/en/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/about-commits)。

## プルリクエスト

プルリクエストは、あるブランチの変更を別のブランチに取り込むことを提案するものです。チームは変更内容を確認し、議論し、チェック結果を見てから、コントリビューションを承認できます。GitLabでは**マージリクエスト**と呼ばれます。

リクエストを作成しても、変更がマージまたはデプロイされることはありません。

詳細: [GitHub DocsのAbout pull requests](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests)。

## マージ

マージは、変更を対象のブランチに取り込みます。ブランチ同士に互換性のない変更が含まれる場合は、先に**マージコンフリクト**を解消する必要があるかもしれません。

マージとデプロイは別の操作です。チームによっては、マージ後にデプロイを自動化している場合がありますが、それはリリースの設定によって異なります。

詳細: [GitHub DocsのMerging a pull request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/merging-a-pull-request)。

このワークフローは、[コントリビューションを行う](https://docs.replit.com/ja/build/code/first-contribution.md)で試せます。
