1. ファイルを直す
Git(ギット)は、ファイルの変更を記録しておく道具です。自分のパソコンに入れて使います。Git で記録をとるフォルダーを リポジトリ と呼びます。
リポジトリの中でファイルを直すと、Git は前の記録と比べて、どのファイルが変わったかを見分けます。ここでは、サイトの index.html の見出しを直したとします。
2. 記録するものを選ぶ(ステージ)
Git は、変えたファイルを自動では記録しません。次の記録に入れるものを、自分で選びます。
選んだファイルは、記録する候補(ステージ)に置かれます。いくつかのファイルを直していても、一緒に記録したいものだけを選べます。命令では git add を使います。
補足
パスワードを書いた設定ファイルのように、記録してはいけないファイルもあります。まだ記録していないファイルなら、.gitignore というファイルに名前を書いておくと、候補に置かれなくなります。すでに記録したファイルには効かないので、記録から外す操作が別に要ります。一度記録して GitHub に送ってしまうと、あとからファイルを消しても、過去の記録の中に残ります。
3. 記録する(コミット)
候補に置いたものを記録することを コミット といいます。コミットは、その時点のファイルの姿を写真のように残し、「見出しを直す」といった説明のメッセージを付けます。
- コミットは順につながって、変更の歴史になります
- いつでも、前のコミットの状態に戻したり、何を変えたかを見比べたりできます
ここまでの作業は、手元のパソコンの中だけで行います。インターネットにつながっていなくても記録できますが、ほかの人からはまだ見えません。
4. GitHub に送る(プッシュ)
GitHub(ギットハブ)は、Git の記録を預かるネット上のサービスです。手元のコミットを GitHub に送ることを プッシュ といいます。
- Git:手元のパソコンで、変更を記録する道具
- GitHub:その記録を預かって、人と共有するための置き場所
GitHub に送っておけば、手元のパソコンが壊れても記録は残ります。リポジトリは公開にも非公開にもできます。GitHub には、変更を見てもらう プルリクエスト や、やることを書いておく Issue など、一緒に作業するための機能もそろっています。
5. 別のパソコンで受け取る(クローン・プル)
別のパソコンや、一緒に作業する人は、GitHub から記録を受け取ります。
- クローン:リポジトリをまるごと、初めて受け取る
- プル:すでに持っているリポジトリに、新しいコミットだけを受け取る
受け取った人は、同じ記録の続きから作業を始められます。直したらコミットして、またプッシュします。
6. ブランチを分けて作業する
コミットの流れの本線を main(メイン)と呼びます。サイトによっては、main に入ったものがそのまま本番に公開されます。
そこで、新しい作業は main から ブランチ(枝)を分けて行います。ブランチの上でコミットを重ねても、main はそのままです。うまくいかなければ、ブランチごと捨てられます。
7. プルリクエストで確かめて合わせる(マージ)
ブランチでの作業が終わったら、GitHub で プルリクエスト を出します。「このブランチの変更を main に合わせたい」という申し出で、ほかの人に変更を見てもらい、話し合えます。
問題がなければ、ブランチを main に合わせます。これを マージ といいます。図の下のボタンで、2 つの場合を切りかえて見られます。
- そのまま合わせられる:ほかの人の変更と重なっていなければ、ボタン 1 つで合わせられます
- 同じ行を直していた:main の側でも同じ行が直されていると、どちらを残すか Git には決められません。これを 競合(コンフリクト)といい、人が選んで直すまでマージできません
main にマージすると自動でサイトに公開する仕組みを使えば、FTP でファイルを上げる作業もいらなくなります。FTP の仕組みは「FTP・SFTP・SSH の違い」、サイトを置く場所の違いは「レンタルサーバー・VPS・クラウド・Cloudflare の違い」で説明しています。
出典
この図解は、出典に挙げた仕様や公式の文書をもとに Claude(AI)が下書きし、セオリコが内容を確かめて公開しています。図は説明のために流れを簡単にしたもので、実際のやりとりはサイトや環境によって異なります。