Git
GitHub
初心者

MacBookへのgit導入とGitHub運用

ようやくgitとGitHubを使えるようになったので忘れないようにメモしておきたいと思う。
内容としてはかなりの初心者向けになる。
前提条件1:作業環境はMacBook
前提条件2:Homebrewをインストール済み
前提条件3:GitHubにアカウント登録済み

gitのインストールからGitHubへプッシュするまで

まずはgitをインストールする。
$ brew install git

インストール完了したらgitのバージョンを確認しておこう。
$ git version

git version 2.19.2

次にgitの初期設定だ。
$ git config --global '[ユーザー名]'
$ git config --global '[メールアドレス]'

これでgitの初期設定はOKだ。

次にGitHubでリモートリポジトリを作り、gitに登録しよう。
※git側からはGitHubのリポジトリは作れない(あるいは私が方法を知らないだけ)
$ git remote add origin [リモートリポジトリのURL]

GitHubの次はローカル環境にリポジトリを作ろう。
$ cd [リポジトリ管理したいフォルダ]
$ git init

※作成したリモートリポジトリをクローンしてもいいようだ($ git clone [リポジトリのURL])。

では先ほどローカルリポジトリを作ったフォルダにファイルを作ってみよう。
おすすめはreadme.txtだ。
作成できたらファイルをgit管理に追加しよう。
$ git add [作成したファイル名]

ちゃんとgitに追加されているか確認しよう。
$ git status

コミットを行う。
コミットで送られるのはGitHubではなくローカルリポジトリということに注意。
$ git commit -m '[コメント]'

完了したかどうか一応確認しておこう。
$ git status

ではpushしてみよう。これでようやくGitHubにファイルを共有することができる。
$ git push -u origin master

Username for 'https://github.com': [GitHubのユーザーネーム]
Password for 'https://igm50@github.com': [GitHubのパスワード]

最後にブラウザなどで自分のGitHubアカウントにログインしてリポジトリを確認してみよう。
うまくファイルが共有できていればOKだ。

※実際のプロジェクトではブランチを切ったりプルリクエストを送ったりマージしたりといった作業が必要になるらしいが、それらは次回に回すことにする。

各コマンドの意味

それぞれのコマンドについてざっくり意味を確認しておこう。

$ git config --global '[ユーザー名]'
$ git config --global '[メールアドレス]'
こちらはgitの設定を操作するコマンドだ。
gitの設定にはsystemgloballocalの三層があり、左から右に行くほどスコープが狭くなるらしい。
最初はglobalで設定しておけば十分だろう多分。

$ git remote add origin [リモートリポジトリのURL]
gitはリモートリポジトリ(ここではGitHub)とローカルリポジトリで相互にバージョン管理を行う仕組みだ。
そのリモートリポジトリとしてoriginという名前でURLを設定している。
ちなみにリモートリポジトリURLの設定は$ git remote -vで確認できる。

$ git init
ローカルリポジトリの作成と初期化を行う。
ターミナルの作業フォルダをバージョン管理したいフォルダにしておくことを忘れないように。

$ git add [作成したファイル名]
コミットするファイルを追加するコマンドだ。
この後に$ git statusすることで変更を確認できるので、こまめにやっておくと達成感が得られて楽しい。

$ git commit -m '[コメント]'
ローカルリポジトリに対しコミットを行う。
$ git add [作成したファイル名]で追加した対象のファイルがコミットされ、ローカルリポジトリのファイルが更新される。

$ git push -u origin master
リモートリポジトリに対しローカルリポジトリへのコミットを適用するコマンド。
上でも書いたが、gitはリモートリポジトリとローカルリポジトリで相互にバージョン管理を行う仕組みだ。
これでようやくGitHubのファイルが更新され、リモートリポジトリとローカルリポジトリで同じバージョンのファイルを持つこととなる。
ちなみにoriginではリモートリポジトリURLを、masterではプッシュするブランチの名前を指定している。
今回はブランチが存在しない状態のため、新たにmasterのブランチが生成されている……はずだ。

参考資料

Git の基礎勉強 〜Git によるバージョン管理を使う〜
GitHub登録からプッシュまでの流れ
ローカルでgitを使用した後、gitHubに登録する方法
【GitHub超初心者入門】この前初めてGitHubを使い始めたエンジニア見習いが書くGitHubの使い方と実践~とりあえず一緒に動かしてみようぜ!~
Git/GitHubレベル別オススメ学習サイトまとめ完全保存版【2018.11】