GitHubでリポジトリを作成する方法として、ブラウザ上のGUIを使ったやり方が一般的ですが、実際の開発現場ではコマンド操作によるGitの利用が基本となることも少なくありません。
本記事では、Git Bashなどのターミナル環境だけを使って、ローカルリポジトリの作成から、GitHubへの公開までの手順をわかりやすく解説します。
GUIを使わずにすべての操作を完結させることで、Gitの仕組みをより深く理解でき、トラブル時の対応力や応用力も高まります。
これからGitを本格的に使っていきたい方、ターミナル操作に慣れたい方にとって、最初の一歩として最適な内容です。
前提条件
- Git はインストール済み(git –versionで確認可能)
- GitHub アカウントを持っている
- GitHub 上で空のリポジトリをあらかじめ作成しておくこと
例:https://github.com/your-username/my-repo
🔸 Git は ローカルリポジトリを作成する機能はあるが、GitHub 上のリポジトリ作成はできません。
mkdir my-first-repo
cd my-first-repoBash→ 空のプロジェクト用ディレクトリを作成して移動します。
Gitリポジトリを初期化
- git statusで初期化の確認ができます。 実行前(初期化されていない)
- git init 実行後、.git フォルダが作成され、このフォルダが Git 管理対象になりました。
- 再び git status 実行後、ブランチ main 上にいる状態で、まだ何もコミットされておらず、my-first-repo/ フォルダが「Gitにまだ追跡されていないファイル」として存在しています。
D:\application\my-first-repo>git status
fatal: not a git repository (or any of the parent directories): .git
#これは「まだ Git 管理されていない」状態を示します。
D:\application\my-first-repo>git init
Initialized empty Git repository in D:/application/my-first-repo/.git/
#.git フォルダが作成され、このフォルダが Git 管理対象になりました。
D:\application\my-first-repo>git status
On branch main
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
my-first-repo/
nothing added to commit but untracked files present (use "git add" to track)
#再び git status 実行後、ブランチ main 上にいる状態で、まだ何もコミットされておらず、my-first-repo/ フォルダが「Gitにまだ追跡されていないファイル」として存在しています。Bash→ このフォルダがGitで管理されるようになります。
ファイルを作成し、ステージに追加
echo "# My First Project" > README.md
git add .Bash→ README.md ファイルを作って、すべてのファイルをステージに追加します。
最初のコミットを作成
git commit -m "初回コミット"Bash→ ステージされたファイルの状態を履歴に記録します。
コミットの履歴(ログ)を確認するコマンドです。
git logBashGitHubで作成したリモートリポジトリを登録
git remote add origin https://github.com/あなたのユーザー名/my-first-repo.gitBash→ ローカルとGitHubリポジトリを接続します。
※URLは自分のリポジトリに合わせて変更してください。
GitHubへコードをアップロード(push)
git push -u origin mainBashこの画面は、GitHub へアクセスするために 認証(ログイン)を求められている状態 です。GitHub アカウントに対して push 操作を許可するためのプロセスです。
「Sign in with your browser」 をクリック

この画面で行うべき操作

🔐 「Authorize git-ecosystem」 ボタンをクリックしてください。真っ白なページが表示されます。
これにより、以下の操作が許可されます。
- Gists:読み取り・書き込みアクセス
- Repositories:パブリックおよびプライベートリポジトリへのアクセス
- Workflow:GitHub Actions の設定変更など(現時点では必要ないですが問題ありません)
🔸 認証後、自動的にローカルの Git クライアントに戻ります。
🔸 認証は一度行えば、しばらくは再入力なしで済みます(トークンが保存されます)。
→ main ブランチとしてGitHubに初回アップロードされます。
※初期ブランチが master の場合は main を master に読み替えてください。
初回push が拒否された場合
GitHub 上のリモートリポジトリ(origin/main)に 初回のgit push が拒否される主な原因は、ローカルとリモートの履歴がつながっていない(無関係な履歴)ことです。
たとえば、GitHub 側でリポジトリ作成時に README などの初回コミットが自動で作成されている場合、
ローカルで git init → git commit を行った履歴とは一致せず、異なるコミットIDの履歴になります。
このように履歴が共有されていない場合、Git は「安全のため push を拒否」します。
解決方法(安全)
次のコマンドでリモートの変更をローカルに統合し、その後 push することで解決できます。
git pull -u origin main --allow-unrelated-historiesBashエディタが起動したらそのまま保存します。エディタを閉じます。エディタを閉じた後、Git のコマンドプロンプトが自動で処理を再開します。
git push -u origin mainBash処理が完了したら、再度 git push を実行することで、リモートへの反映が可能になります。結論として、ローカルで git init したリポジトリを初めて GitHub に push する場合は、git pull origin main –allow-unrelated-histories を実行する必要があります。
-u を使うと何が便利?
一度 -u オプションを付けるとブランチ名もリモート名も、今後省略可能になります。
git pull
git pushBashまとめ
今回の記事では、Gitの基本的なコマンド操作だけを使って、ローカルリポジトリを作成し、それをGitHub上に公開するまでの一連の手順を解説しました。
リポジトリの初期化(git init)から始まり、ファイルの追加、初回コミット、リモートリポジトリの登録(git remote add origin)、そしてリモートへの初回のpush(git push -u origin main)まで、すべての操作はコマンドラインで完結します。最初はとっつきにくく感じるかもしれませんが、ひとつひとつの操作を理解しながら進めることで、Gitの仕組みや動作原理が見えてくるはずです。
GUIツールに頼らず、自分の手でGitの操作をコントロールできるようになると、プロジェクト管理の自由度が一気に高まります。特にチーム開発や複数環境での作業を行う場面では、このような知識が大いに役立つでしょう。
今後は、ブランチの活用や.gitignoreの設定、複数人での共同開発など、さらに一歩踏み込んだGitの使い方にチャレンジしてみてください。
コマンド操作でのGit管理をマスターすることは、開発者としての大きな武器になります。ここまで読み進めていただき、ありがとうございました。
ChatGPT に質問する

