【2026年9月最新】Git入門|リポジトリの作成からpushまで完全ガイド|init・add・commit・remote・pushの流れを整理
「Gitのリポジトリってどう作ればいいの?」「addしてcommitしてpushって、結局何をしているの?」——この記事にたどり着いたあなたは、おそらくそんな疑問を抱えているはずです。
Gitは、ファイルの変更履歴を記録し、「いつ」「誰が」「何を」変更したかを追跡・共有できるバージョン管理システムです。プログラミングだけでなく、企画書やマニュアルの共同編集でも使われるようになってきました。とはいえ、init・add・commit・remote・pushという一連の流れは、最初は「呪文」のように感じる人が多いのも事実です。
この記事では、Gitのリポジトリ作成からGitHubへのpushまでの流れを、実例付きで丁寧に整理します。さらに後半では、弊社(株式会社GENAI)がClaude Codeという AIエージェントを使ってGit操作をどう扱っているかという、2026年時点のもうひとつの現実的な選択肢も紹介します。
この記事を最後まで読むと、次の6つが明確になります。
01 WHAT IS GIT そもそもGitとは何か バージョン管理システムが解決する「あの問題」
Gitは、ファイルの変更履歴を細かく記録し、過去の状態にいつでも戻せる・複数人での同時編集を安全に扱えるようにする仕組みです。よくある「file_final_v2_本当の最終.docx」のような、ファイル名でバージョン管理する運用の問題を根本的に解決します。
📚 用語解説
Git(バージョン管理システム):ファイルの変更履歴を記録・追跡するためのツール。「いつ」「誰が」「どの部分を」変更したかを記録し、過去の任意の時点の状態に戻したり、複数人の変更を安全に統合したりできます。プログラム開発だけでなく、文書管理にも応用されています。
Gitには大きく分けて2種類のリポジトリ(保管場所)が登場します。ローカルリポジトリ(自分のパソコンの中)とリモートリポジトリ(GitHubなど、インターネット上の共有サーバー)です。基本的な作業の流れは、以下の4ステップに集約されます。
ローカルリポジトリを
作る(git init)
変更を記録する
(git add + commit)
リモートと
接続する(remote add)
リモートへ
反映する(git push)
Gitを使うには、事前にパソコンへインストールしておく必要があります。Macであればターミナルでgit --versionと打つとバージョンが表示されることが多く、表示されない場合は公式サイトからインストーラーを取得します。Windowsの場合はGit for Windowsを導入すると、Git Bashというターミナル環境も一緒に使えるようになります。
02 GIT INIT ローカルリポジトリを作る(git init) 自分のパソコンの中に「記録の場所」を用意する
まずは、管理したいファイルが入っているフォルダで、Gitの管理を開始するコマンドを実行します。
# 管理したいフォルダに移動
cd my-project
# そのフォルダをGit管理下に置く
git init
# 出力例:
# Initialized empty Git repository in /Users/xxx/my-project/.git/
📚 用語解説
git init:カレントディレクトリ(今いるフォルダ)を、Gitで変更履歴を管理する「リポジトリ」として初期化するコマンド。実行すると、フォルダ内に隠しフォルダ「.git」が作られ、ここに以降のすべての変更履歴が記録されていきます。
git initを実行すると、そのフォルダの中に.gitという隠しフォルダが作られます。このフォルダの中に、変更履歴のすべてのデータが保存される仕組みです。.gitフォルダを削除すると、それまでの履歴もすべて失われるため、誤って削除しないよう注意が必要です。
すでにGit管理されているフォルダの中で、さらに別のサブフォルダに対してgit initを実行してしまうと、「ネストされたリポジトリ」という混乱の原因になります。作業前にgit statusで今どのリポジトリの中にいるかを確認する習慣をつけると安全です。
03 ADD AND COMMIT ファイルの変更を記録する(git add / git commit) 「記録したい変更」を選んで、履歴として確定する
git initしただけでは、まだ何も記録されていません。ファイルの変更を実際に履歴として残すには、git addとgit commitという2段階の操作が必要です。
# 変更したファイルを「記録対象」に追加する
git add README.md
# フォルダ内の変更をすべて追加したい場合
git add .
# 記録対象を、メッセージ付きで履歴として確定する
git commit -m "READMEに概要を追加"
📚 用語解説
git add:変更したファイルの中から、次の「記録(コミット)」に含めたいものを選んで登録するコマンド。このステップを「ステージング」と呼び、まだ正式な履歴にはなっていない「仮登録」の状態です。
📚 用語解説
git commit:git addでステージングされた変更内容を、正式な履歴として確定するコマンド。-mオプションで、その変更が「何のための変更か」を説明するコミットメッセージを付けます。このメッセージが、後から履歴を振り返るときの手がかりになります。
なぜaddとcommitが分かれているのか疑問に思うかもしれません。これは、「変更したファイルのうち、今回の記録に含めたいものだけを選べる」ようにするためです。例えば5つのファイルを変更しても、意味のあるまとまりごとに2回に分けてcommitする、といった柔軟な使い方ができます。
良いコミットメッセージの例は「ログイン画面のバリデーションを追加」のように、変更内容が一目で分かるものです。「修正」「更新」のような曖昧なメッセージだけだと、後から履歴を見返したときに何が変わったのか分からなくなります。
3-1. git statusとgit logで状態を確認する
作業の合間には、git status(今どんな変更があるか)とgit log(これまでの履歴)を確認する習慣をつけると、迷子になりにくくなります。
# 今の変更状況を確認
git status
# コミット履歴を一覧表示
git log --oneline
# 出力例:
# a1b2c3d READMEに概要を追加
# e4f5g6h 初回コミット
04 REMOTE REPOSITORY リモートリポジトリと連携する GitHubでリポジトリを作り、ローカルと接続する
ここまではすべて自分のパソコンの中(ローカルリポジトリ)だけで完結する話でした。ここからは、GitHubのようなクラウド上のサービス(リモートリポジトリ)と接続し、変更履歴を共有・バックアップする手順に進みます。
4-1. GitHub上でリモートリポジトリを作成する
GitHubにログインし、「New repository」からリポジトリを新規作成します。作成直後の画面に、接続用のコマンド例(リポジトリのURL)が表示されるので、そこからURLをコピーします。
📚 用語解説
リモートリポジトリ:GitHubなど、インターネット上のサーバーに置かれたリポジトリのこと。自分のパソコン(ローカル)の変更履歴をここに送ることで、他のメンバーとの共有や、パソコンが壊れた場合のバックアップとして機能します。
4-2. git remote addでローカルとリモートを接続する
# リモートリポジトリを「origin」という名前で登録
git remote add origin https://github.com/yourname/my-project.git
# 接続先が正しく登録されたか確認
git remote -v
# 出力例:
# origin https://github.com/yourname/my-project.git (fetch)
# origin https://github.com/yourname/my-project.git (push)
📚 用語解説
git remote add origin:ローカルリポジトリに対して、接続先のリモートリポジトリを登録するコマンド。「origin」はリモートリポジトリに付ける名前(別名)で、慣習的にこの名前が使われますが、任意の名前を付けることも可能です。
GitHubのリポジトリURLは、httpsとsshの2種類の形式があります。httpsは毎回ユーザー名とパスワード(またはトークン)の入力が求められることが多く、sshは事前に鍵を登録しておけば認証を省略できます。初めての場合はhttpsから始めるのが分かりやすいです。
05 GIT PUSH リモートにpushする(git push) ローカルの変更履歴をGitHubへ反映する
接続が済んだら、いよいよgit pushでローカルの変更履歴をリモートリポジトリへ送信します。
# ローカルのmainブランチをリモート(origin)へpush
git push origin main
# 出力例:
# Enumerating objects: 5, done.
# Writing objects: 100% (5/5), done.
# To https://github.com/yourname/my-project.git
# * [new branch] main -> main
📚 用語解説
git push:ローカルリポジトリに記録されているコミット履歴を、リモートリポジトリへ送信(反映)するコマンド。「origin」は送信先のリモート名、「main」は送信するブランチ名を指定します。初回のpushでは、GitHubのユーザー名とパスワード(またはアクセストークン)の入力を求められることがあります。
pushが成功すると、GitHub上のリポジトリページに、ローカルで作成・編集したファイルが反映されます。以降は「ファイルを変更 → add → commit → push」という一連の流れを繰り返すことで、変更履歴を積み重ねていきます。
pushまでの一連の流れを図にすると、以下のようにローカルとリモートの間を「記録→接続→反映」の順で進んでいく形になります。
ファイル編集
で記録
で接続(初回のみ)
GitHubへ反映
2026年時点のGitHubでは、パスワードでの認証が廃止されており、代わりに「パーソナルアクセストークン」の発行が必要です。GitHubの設定画面からトークンを発行し、パスワードの代わりにそのトークンを入力することで認証が通ります。
5-1. ブランチという「作業の分岐」の考え方
ある程度慣れてくると、ブランチという概念も登場します。mainブランチ(本流)とは別の「作業用の分岐」を作り、そこで試作や実験的な変更を行ってから、問題がなければmainに統合する、という使い方です。
# 新しいブランチを作って切り替える
git checkout -b feature-new-page
# ブランチ上で作業してcommitを重ねる
git add .
git commit -m "新しいページを追加"
# 作業が終わったら、そのブランチをpush
git push origin feature-new-page
📚 用語解説
ブランチ:リポジトリの中に作る「作業の分岐」のこと。本流(main)に影響を与えずに、試作・実験的な変更を進められます。作業が完成したら、mainブランチに「マージ(統合)」することで本流に反映します。
5-2. 初心者がつまずきやすい3つのトラブルと対処法
Gitを触り始めたばかりの人が高確率で遭遇する典型的なトラブルを3つ、原因と対処法とあわせて紹介します。事前に知っておくだけで、実際に遭遇したときの焦りがかなり減ります。
トラブル1:「fatal: not a git repository」と表示される
git addやgit commitを実行しようとしたときに、この表示が出た場合はそもそも今いるフォルダがGit管理下にないことが原因です。git initを実行し忘れているか、別のフォルダで作業してしまっている可能性が高いです。
# 今いる場所を確認
pwd
# .gitフォルダが存在するか確認(存在すればGit管理下)
ls -a
# なければ改めてinit
git init
トラブル2:pushしようとすると「rejected」と表示される
これはリモート側に、自分がまだ取り込んでいない変更がある場合に起きる、非常に頻度の高いエラーです。他のメンバーが先にpushしていたり、GitHub上で直接ファイルを編集していたりするケースで発生します。
# リモートの最新状態を取り込んでからpushする
git pull origin main
git push origin main
git pullの際に、同じ箇所を別々に編集していると「コンフリクト」が発生し、Gitがどちらを採用すべきか自動判断できなくなります。該当ファイルには<<<<<<<のような目印が挿入されるので、どちらの内容を残すかを人間が選んで修正し、改めてadd・commitします。判断に迷う場合は、AIエージェントに両方の変更内容を見せて「どちらを残すべきか」を相談するのも有効な手段です。
トラブル3:コミットメッセージを書き間違えた
直前のコミットメッセージだけを訂正したい場合は、--amendオプションが使えます。ただし、すでにpush済みのコミットに対してamendすると履歴が食い違うため、push前の段階で使うのが基本です。
# 直前のコミットメッセージだけを修正(pushする前に限る)
git commit --amend -m "正しいコミットメッセージ"
📚 用語解説
コンフリクト(衝突):複数の変更が同じ箇所を異なる内容で書き換えており、Gitが自動的にどちらを採用すべきか判断できない状態のこと。該当箇所を人間が確認し、どちらの内容を残すか(あるいは両方を組み合わせるか)を決めて解消します。
5-3. コマンドを打たずに使うGUIツールという選択肢
ここまで紹介してきたコマンドはすべてターミナル上で入力するものですが、GitにはGUI(画面操作)で同じ操作を行えるツールも存在します。代表的なものが「GitHub Desktop」や「Sourcetree」で、add・commit・pushをボタンのクリックだけで実行できます。
| 方法 | 特徴 | 向いている人 |
|---|---|---|
| ターミナル(コマンド) | 細かい操作が可能、応用が効く | Gitの仕組みを理解して使いこなしたい人 |
| GitHub Desktop等のGUI | 視覚的に変更差分を確認しながら操作できる | コマンドの暗記が苦手な非エンジニア |
| Claude CodeなどAIエージェント | 日本語で指示するだけで一連の操作を代行 | そもそも操作自体を任せたい人 |
どの方法を選んでも、内部的に行われている処理(変更履歴を記録し、リモートに送る)は同じです。「コマンドを覚えることが目的ではなく、安全に変更履歴を残すことが目的」だと考えれば、自分に合った方法を選べば十分です。
06 AI-ASSISTED GIT 【独自】Gitコマンドを「打つ」から「AIに指示する」へ 非エンジニアがコマンドを覚えずにバージョン管理を実現する方法
ここまでGitの基本操作を一通り解説してきましたが、正直なところに触れます。2026年現在、経営者や非エンジニアの方が、init・add・commit・remote・pushのコマンドと引数をすべて暗記して自力で打つ必要は薄れてきています。
理由は明確で、Claude CodeのようなAIコーディングエージェントは、ファイルを変更した後に「これをGitHubに保存しておいて」と日本語で伝えるだけで、add・commit・pushの一連の流れを適切なコミットメッセージ付きで自動的に実行してくれるからです。
📚 用語解説
Claude Code:Anthropicが提供するAIコーディングエージェント。ターミナルやデスクトップアプリ上で「やりたいこと」を日本語で伝えると、ファイルの読み書き・Git操作・コードの実行までを自律的に行います。git init・add・commit・pushの正確な書き方を暗記していなくても、変更履歴の記録・共有を実現できます。
とはいえ、「Gitが何をしているか」を理解していることには依然として価値があります。AIが実行した操作の意味を理解できたり、「このブランチで作業して」「この変更だけを別々にcommitして」と的確に指示を出したりするには、最低限の構文理解が役に立つからです。
6-1. どんな業務がGit操作の自動化で楽になるか
Gitが活躍する場面は、突き詰めると「ファイルの変更履歴を残しながら、安全に更新を重ねたい」業務すべてです。以下のような業務は、まさにGit操作の自動化で工数と事故リスクが大きく減る典型例です。
弊社の実感では、これからの現場に必要なのは「Gitコマンドを正確に打てるエンジニア」を採用することよりも、「この変更を、どういう単位で記録してほしいかをAIエージェントに正確な日本語で指示できる人」を社内に増やすことです。この記事のような基礎知識は、まさにその「正確な指示」を出すための土台になります。
07 GENAI CASE STUDY 【独自データ】GENAI社内のGit・バージョン管理自動化事例 Claude Codeで「変更履歴の記録」をどこまで自動化しているか
ここでは、弊社(株式会社GENAI)が実際にClaude Codeを使って、Gitによるバージョン管理をどのように業務に組み込んでいるかを、数値と事例ベースで公開します。
7-1. 弊社の契約プランと導入範囲
| 項目 | 内容 |
|---|---|
| 契約プラン | Claude Max 20x(月$200 / 約30,000円) |
| 利用開始 | 2025年後半〜 |
| 利用部署 | 経営・営業・広告・開発・経理・秘書業務・個人業務まで全社 |
| Git操作の主な用途 | LP・WordPress関連コードの変更履歴管理、社内スクリプトのバックアップ・共有 |
7-2. バージョン管理の自動化による削減時間(肌感ベース・2026年4月時点)
| 業務領域 | 主な用途(Git操作を含む自動化) | 概算削減時間 |
|---|---|---|
| 開発 | コード変更のcommit・push・履歴確認を自動化 | 都度数十分〜数時間削減 |
| 広告運用 | 配信設定スクリプトの変更履歴を自動記録 | 週10時間 → 週1時間 |
| ブログ記事 | 記事生成スクリプトの改修履歴を追跡・共有 | 1本8時間 → 1本1時間 |
| 経理 | 経理自動化スクリプトの変更管理 | 月40時間 → 月5時間 |
上記は弊社の肌感ベースの数値であり、業種・業態・担当者のスキルによって削減時間は変動します。あくまで「Git操作を含むバージョン管理をAIに任せるとどの程度まで使い倒せるか」の参考情報としてご覧ください。
例えば開発業務では、以前は変更のたびに手動でcommitメッセージを考えてpushしていましたが、現在はClaude Codeに「このスクリプトの修正が終わったら記録しておいて」と指示するだけで、人間が打てば数回のコマンド操作に相当する処理を数秒〜数十秒で終わらせています。
特に効果を感じているのは、複数のLPやスクリプトを同時並行で改修する場面です。以前は「どのファイルを、いつ、なぜ変更したか」が担当者の記憶頼みになっており、後から見返すと経緯が分からなくなることがありました。現在はClaude Codeが変更のたびに意味のある単位でcommitを残してくれるため、数ヶ月前の変更理由を後から正確に追跡できるようになった点が、地味ながら最も価値を感じているポイントです。
08 CONCLUSION まとめ ── Gitを理解すると、AI指示の精度も上がる 基礎を押さえた上で、「打つ」作業自体はAIに任せる選択肢を持つ
この記事では、Gitの基本概念から、ローカルリポジトリの作成(git init)、変更の記録(add・commit)、リモートリポジトリとの接続(remote add)、pushによる反映、ブランチの基礎、そしてAIエージェントにGit操作を任せるという現実的な選択肢までを整理しました。最後にポイントを振り返ります。
最も重要なメッセージをお伝えします。Gitの理解は「自分でコマンドを打つため」だけでなく、「AIに正確な指示を出すため」の土台としても価値があります。仕組みの意味がわかっていれば、AIが実行した操作の妥当性を判断でき、修正の指示も的確に出せるようになります。コマンドを丸暗記する必要がなくなった今だからこそ、「何のためにその操作をしているのか」という仕組みの理解に時間を使う方が、結果的に投資対効果の高い学び方だと言えるでしょう。
弊社では、Claude Codeを使った業務自動化の設計から伴走まで支援する「AI鬼管理」というサービスを提供しています。Git操作に限らず、社内の「変更管理・履歴管理」の仕組みをどこまでAIに任せられるか、業種・業態を問わず幅広くご相談いただいています。気になる方は、ぜひ以下からお気軽にご相談ください。
「安全な変更管理」の仕組みづくり、AI鬼管理が一緒に設計します
Gitコマンドを自分で打つか、AIに任せるか。
あなたの会社のコードや業務スクリプトの「変更管理」を棚卸しして、最適な運用を一緒に考えます。
ここから先の進め方は、大きく2つあります。
自社で回せるようになりたい方は、AI鬼管理でClaude Code/Codexの使い方から業務設計・社内定着まで伴走を受けながら、社内に仕組みを作る道があります。
覚えるより任せたい方は、AI社員AIKATAでこの記事のような定型業務を丸ごと預ける道があります。料金は月30万円の月額定額、追加費用は0円です。
どちらが合うかは、業務量と社内体制次第です。無料相談・無料適合診断で、貴社の場合はどちらが向くかからご相談いただけます。
NEXT STEP
この記事の内容を、あなたのビジネスで
実践してみませんか?
よくある質問
Q. git initとgit cloneはどう違いますか?
A. git initは「新しく空のリポジトリを作る」コマンドで、git cloneは「すでに存在するリモートリポジトリを丸ごとコピーしてくる」コマンドです。ゼロから始める場合はinit、既存のプロジェクトに参加する場合はcloneを使います。
Q. pushする前に、他の人の変更を取り込む必要はありますか?
A. 複数人で同じリポジトリを触っている場合は、pushする前にgit pullで最新の変更を取り込んでおくのが安全です。取り込まずにpushすると、リモート側の履歴と衝突してエラーになることがあります。
Q. mainブランチとmasterブランチ、どちらが正しいですか?
A. 技術的にはどちらでも動作しますが、2026年時点ではGitHubを含む多くのサービスで「main」がデフォルトのブランチ名として採用されています。古い解説記事では「master」表記のものもありますが、新規プロジェクトでは基本的にmainを使えば問題ありません。
Q. 間違えてcommitした内容を取り消すことはできますか?
A. できます。直前のcommitを取り消したい場合はgit resetやgit revertを使いますが、操作を誤ると履歴が意図せず失われることがあるため、慣れないうちはAIエージェントに「この前のcommitを取り消して」と相談しながら進める方が安全です。
Q. .gitignoreとは何ですか?
A. Gitの管理対象から除外したいファイルやフォルダを指定するための設定ファイルです。パスワードなどの認証情報や、自動生成される一時ファイルを誤ってGitHubに公開しないために使います。特に認証情報が含まれるファイルは、必ず.gitignoreに登録しておく必要があります。
Q. プログラミング未経験でもClaude CodeでGit操作は実現できますか?
A. 実現できます。Claude Codeは「今の変更を記録しておいて」「新しいブランチを作って作業して」といった日本語の指示から、必要なGitコマンドを自動で実行します。この記事の基礎知識があれば、実行結果の妥当性もより正確に判断できますし、想定外の挙動に気づいたときも「なぜその操作をしたのか」をAIに確認しながら安心して進められます。
Claude Codeで業務自動化を90日で叩き込む
経営者向けの伴走型パーソナルトレーニング
AI鬼管理/AI社員AIKATAへのお問い合わせ
この記事を読んで気になった方へ。
専門スタッフが、御社に最適な
業務自動化・業務代行プランを無料でご提案します。




