おーむです。
自分がエンジニアになるまでに勉強していた時、Gitというものがよく分かりませんでした。
色々調べてもなかなかイメージが掴めない・・・。
やはり実際に使ってみないと理解は深まりません。
この記事では、Git初心者の方に向けてソースコードをGitHubにアップロード(Push)するまでの手順を解説していきます。
Gitとは

Gitとは、プログラムのソースコードの変更履歴を記録、追跡するためのバージョン管理システムです。
必ずと言って良いほど多くのプロジェクトで利用されています。
エンジニアなら必須スキルなのでキチンと理解しておきたいところです。
Gitを利用すれば、1つのサービスのプログラムのコードを新規登録機能、編集機能、削除機能などなど機能毎にコードを分けて管理することができます。
それによってソースコードの変更前と変更後の差分が分かる、変更前の状態に戻せるなどの利点があります。
GitとGitHub

Gitと似た名前のGitHubというものがありますが全くの別物です。
GitHubとは、自分の作品であるプログラムコードやデザインデータを保存、公開することができるWebサービスです。
会員登録をするだけで無料で使用することができます。
GitHubにプログラムコードなど保存、公開するためにはGitを使用してアップロードします。
GitとGitHubはお互いに必要不可欠な存在です。
ちなみにGitHub以外にGitLabなど同じようなWebサービスがあります。

特に拘りがなければGitHubでOK!
GitHubにアップロードするまでの手順
GitHubにアカウント登録が完了して利用できる状態の想定で解説します。
おおまかな全体の流れとしては下記の手順です。
- Git Hubにてリモートリポジトリを作成
- ローカルリポジトリを作成(
git init
) - アップロードするファイルをステージング(
git add ファイル名
) - ファイルの変更、追加を保存(
git commit -m 'コミットメッセージ'
) - リモートリポジトリに反映(
git push origin ブランチ名
)
今回はmasterブランチにアップロードするようにします。
順番に解説していきます。
リモートリポジトリの作成
GitHubにログインします。
自分のプロフィール画面よろ右上のアイコンをクリックしてメニューを開き、「your repositories」をクリックします。
右上の緑色の「New」をクリックします。

Repository nameはリモートリポジトリの名前、Descriptionはリポジトリの説明を入力します。
Repository nameは、例えばToDoリストならToDoList、ブログサービスなら〇〇Blogなどといったようにこのリポジトリにアップロードするコードが何のコードなのかを入力します。
Descriptionは詳細の説明を入力します。
入力できたらCreate repositoryをクリックします。
これでリモートリポジトリの作成完了です。
ローカルリポジトリの作成
ターミナルを開きます。

Gitの管理をしたいファイルのあるディレクトリに移動して下記のコマンドを入力します。
git init
これにより現在のディレクトリがローカルリポジトリに設定されます。
ちなみにgit initをすることでディレクトリ内に.gitという設定ファイルが格納されている隠しフォルダができます。
ステージング(git add)
次にGit Hubにアップロードしたいファイルをステージングします。
git add
で変更のあったファイルやディレクトリを ステージング に登録します。
ステージングとは、簡単に言うとアップロードしたいファイル、フォルダを選択するということです。
下記のコマンドでディレクトリ内のファイルを全てステージングします。
git add .
ちなみに下記のコマンドだと変更があるファイル、新規のファイルのみステージングできます。
git add --all
ステージングに登録した変更内容を全て取り消したいという時はgit resetで取り消すことができます。
git reset
コミット(git commit)
現在ステージングに登録されている変更内容を、ローカルリポジトリに保存します。
コミットする際は変更内容が何なのか分かるようにメッセージを付けます。
git commit -m 'コミットメッセージ'
コミットメッセージって何を入力すればいい?

コミットメッセージって何を入力すればいいの・・・?
自分が初めてがgit commitしたときに思った疑問です。
コミットメッセージはgit commitで保存する内容に何の変更があるのかを入力すると、あとからコミット内容を確認したときに分かりやすいです。
例をあげると、
- 〇〇機能の実装
- 〇〇の〇〇を修正
- 〇〇の〇〇を変更
などといった感じでコミットメッセージを入力しましょう。
プッシュ(git push)
git pushでローカルリポジトリをリモートリポジトリに反映させます。
簡単にいうと、git initで設定したディレクトリ内の内容をGitHubのリポジトリに反映させるということです。
下記のコマンドでmasterブランチの内容を反映させます。
git push origin master
これでGit Hubにローカルリポジトリの内容が反映されたので確認してみましょう。
まとめ
GitHubにアップロードするまでの手順の解説でした。
gitは、知らない用語が大量に出てくるので理解しようにもその用語の意味から理解しないといけません。
最初はややこしくて理解しづらいですが使っていくうちに少しずつ理解できてきます。
GitHubにたくさんCommit、Pushして草を生やしていきましょう!