今回はWindowsマシン上でGit Bashを使って、新リポジトリの作成、ファイルをGithubへプッシュする方法を解説します。
今回の解説の主な内容は、以下の4点です。
- cdコマンドによるフォルダ移動の方法
- mkdirコマンドによるリポジトリ(フォルダ/ディレクトリ)を作る方法
- git commitコマンドによるコミットの方法
- git pushコマンドによってGithubへpush(プッシュ)する方法
なお今回はgitの概念やそのシステムがどういったものなのかは説明しません。あくまで、初めてgitを使うときの作業だけに焦点を当てます。
Contents
今回の作業環境や前提条件
今回の作業は以下の条件で行います。
- Windows10
- Git Bash
- Githubのアカウントを作成し、Github上にリモートリポジトリ「git_repos」を作成している
- GithubへはSSH接続を使う
もしGithub上のリモートリポジトリ作成がまだなら、【初心者向けGit使い方解説】WindowsのGit BashでGithubにプライベートリポジトリを作成してSSH接続する手順・方法の解説」を参考にしたりしながら、作っておいてください。
またそのリモートリポジトリの名前は上記のとおり、git_reposとしておいてください。以下の作業でそれと同じ名前のフォルダを作ります。同じ名前のほうがコマンドが簡単になるからです。
作業の流れ
gitの作業はものすごく大ざっぱにいえば、次のような流れとなります。
リポジトリの作成
↓
ステージングエリアへのファイル追加
↓
コミット
↓
プッシュ
手順その1:新リポジトリを作りたいフォルダへ移動し、新リポジトリを作成
フォルダへ移動
とりあえずGit Bashを起動させます。次のようにドル記号が表示されているはずです。
$
まず新しいリポジトリを作りたい場所へ移動しましょう。今回は、
c:/Users/hogehoge
に、新しく「git_repos」というフォルダを作り、そのフォルダを新しいリポジトリとします。
なおhogehogeというのはみなさんのパソコンでのユーザー名で、みなさんがWindowsパソコンを購入したときに、Windows上で設定しています。よって一人ひとり異なります。
まず「c:/Users/hogehoge」へ移動します。
そのためには上のドル記号のあとに、cdコマンドを使って、次のように入力してリターンキーを押します。
$ cd c:/Users/hogehoge
実際に移動できたかどうか、pwdコマンドで確かめてみましょう。
$ pwd
こうすると、現在作業しようとしているフォルダの場所(パス)が表示されます。今回なら「c:/Users/hogehoge」と表示されているでしょう。
新しくリポジトリを作成し、初期化
ではそのhogehogeの直下に、git_reposというリポジトリのためのフォルダを作ってみましょう。mkdirコマンドを使い次のようにします。
$ mkdir git_repos
リターンキーで実行させるとgit_reposというフォルダがhogehoge直下にできあがっているはずです。
この時点ではただ単に普通のフォルダが出来上がっただけで、gitが管理する特別なフォルダ(つまりリポジトリ)にはなっていません。
この時点ではまだ作業している場所は「c:/Users/hogehoge」ですが、gitでいろいろするには今つくったフォルダを作業場所にしなければなりません。
そこでそのgit_reposへ移動します。同じくcdコマンドで、
$ cd git_repos
で実行。実際に移動できているか上のpwdコマンドを使って、
$ pwd
としてみてください。「c:/Users/hogehoge/git_repos」となっていますか?なっていればOKです。
次にそのフォルダをリポジトリ化させます(初期化)。この作業を忘れると、上手くいかずエラーが出ます。初期化は、
$ git init
これだけです。
これをすると、Git Bash上の表示が、
hogehoge@DESKTOP-U8PTRLN MINGW64 /c/users/hogehoge/git_repos
から
hogehoge@DESKTOP-U8PTRLN MINGW64 /c/users/hogehoge/git_repos (master)
へと変わります。「(master)」という情報が末尾に追加されていますね。
では次の手順へ進みます。
手順その2:ファイルの追加とコミット
ステージングエリアへのファイル追加
今リポジトリを作ったので、次はステージングエリアへのファイル追加の作業へ入ります。
作業の場所は「c:/Users/hogehoge/git_repos」のままにしてください。リポジトリの中で作業します。
今のそのgit_repos内に「views.py」というファイルがあったとします。そのviews.pyをステージングエリアに追加してみましょう。
ステージングエリアへファイルを追加するコマンドは、git addを使います。
$ git add views.py
とするだけです。
現時点での状態を確認してみる
git status
結果は、
On branch master
No commits yet
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: views.py
これは、次の「コミットという作業ができる」という状態になっていることを意味します。
上のメッセージでは「Changes to be committed」と表示されていますが、もしステージングエリアへの追加が上手く言っていない場合は、「Untracked files」と表示されます。
手順その3:コミットする
コミット
ではコミット作業へ入ります。コマンドはgit commitを使い、
$ git commit -m "views.pyを初めてコミットしました。"
コマンド中の”~”はコメントです。わかりやすく、簡潔な表現にしましょう。
これを実行すると、
[master (root-commit) 735938b] views.pyを初めてコミットしました
1 file changed, 9 insertions(+)
create mode 100644 views.py
と表示されます。
コミット後のログを確認
コミットの履歴などを確認できます。
$ git log
としましょう。
commit XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX (HEAD -> master)
Author: 1978works <1978works@gmail.com>
Date: Sun Dec 18 13:58:38 2022 +0900
views.pyを初めてコミットしました
こんな感じに表示されるでしょう。
ここまでがみなさんの手元のパソコンでやる作業です。つまり、まだviews.pyのデータはGithubには送信されていません。
次はviews.pyのデータをGithub上に送信しましょう。プッシュ(push)の作業へ入ります。
手順その4:プッシュ
プッシュとは乱暴にいえば、手元のパソコン(ローカルPC)のファイルの情報(更新情報など)を、Github上へ送信する作業です。
Githubはインターネット上にありますので、インターネットを使って誰もがそのファイルにアクセスし、編集したりできます。みんなで1つのファイルを編集しあって共同作業できるわけですね。もちろんそれらの他人の行動を制限することも可能です。
Github上でリモートリポジトリを作成
上の項目「今回の作業環境や前提条件」で述べたように、今回はすでにリモートリポジトリを作成していることを前提としています。
その作成方法については、当ブログの記事「【初心者向けGit使い方解説】WindowsのGit BashでGithubにプライベートリポジトリを作成してSSH接続する手順・方法の解説」や、ネット上の記事を見てください。
今回はすでにGithub上に「git_repos」というリモートリポジトリを作成しているとします。
そして上述のようにそのリモートリポジトリの名前と、「c:/Users/hogehoge/」直下につくった新リポジトリを同じ名前にしています。
さて、そのリモートリポジトリ「git_repos」にSSH接続するためのアドレスを利用して、次のように入力します。(関連記事:【超初心者】GitでPushできない1つの場合とその解決方法)
次の画像を見てください。

SSH接続のためのアドレスをコピーして、それを使い次のように入力します。
$ git push git@github.com:1978works/git_repos.git
これを実行すると、
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Delta compression using up to 4 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 410 bytes | 205.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
remote:
remote: Create a pull request for 'master' on GitHub by visiting:
remote: https://github.com/1978works/git_repos/pull/new/master
remote:
To github.com:1978works/git_repos.git
* [new branch] master -> master
と表示されます。これで成功です。
実際にGithubアカウントで、リモートリポジトリgit_reposの中を見てみましょう。次の画像を見てください。

mainではなく、masterブランチに切り替えます。

このようにきちんとviews.pyが存在しています。これでGithub上でviews.pyをいろいろできるようになります。
以上、大変おおざっぱで簡単な手順解説でしたが、GitとGithubの連携作業の大きな流れは掴めたでしょうか。