ラビット・エンジニアリング

趣味の電子工作を、備忘録もかねて・・・・

アップルM1チップ搭載のMacBookAirで、GitHubを使ってみた!

背景

前から気になっていたGitHubを使ってみた。何が便利なのかよくわからないので、わかるようになるために触ってみることにした。

結論

ローカルのファイルをリモートリポジトリにpushして、外部からアクセスできるようになった。便利さは未だ不明だが、備忘録を残す。

 

前提

マシンはMacBookAir M1 2020、macOS Big Sur バージョン11.2.2 。gitは、初めからインストールされていた。

git version 2.30.1 (Apple Git-130)

 

 

まずはGitHubのアカウント登録

 無料版と有料版があり、有料版だとファイルを非公開で共有できる。お試しなので無料版でやってみた。

techacademy.jp

僕は、ここを参考に登録しました。アドバイスとしては、ユーザーIDとパスワードは覚えられてかつ入力し易いものがオススメ!後からターミナルで入力することになるので、ブラウザが推奨する自動生成パスワードを使うと後悔します。

 

必須単語のおさらい

どうしても覚えなければ話が通じないのでここで2単語を記憶する。リポジトリディレクトリと読み替えればOK

 

コミット(commit)

  • ファイルの追加や変更の履歴をローカルリポジトリに保存すること

プッシュ(push)

 

結局GitHubで何ができるか

gitとGitHubは別物。まずgitはいわゆるタイムマシンのようなもの。ローカルリポジトリでコミットするたびに、その時点での状態がセーブされて、後から過去に戻ることができる。GitHubは、コミットしたgitのローカルリポジトリのアップロード先のこと。

リモートリポジトリの作成

Githubページで、ヘッダーの+ボタンから Create a new repository ボタンを押してリモートリポジトリ(ネット上の保存先)を作成する。赤枠のリポジトリネームを入力して、緑色のボタン押して終了。今回は、m5camera-webcam を作成。

 

f:id:Pin-Pon-Usagi:20210703091902p:plain

リモートリポジトリ(ネット上の保存先)を作成しておく

 

ローカルリポジトリの作成

ローカルに、リモートリポジトリとリンクするための作業ディレクトリを作成。ターミナルでの操作。

usagi@usagi-mba git % ls
m5camera m5camera-webcam

 

まずはinitコマンドで初期化するらしい。init実行すると、現在のディレクトリに「. git」なるリポジトリを構成するディレクトリが作成され、 .gitフォルダを含めてinit実行したディレクトリがgitの管理対象として登録されるとのこと

usagi@usagi-mba m5camera-webcam % git init
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
Initialized empty Git repository in /Users/usagi/git/m5camera-webcam/.git/

ずらずらと出てきたがエラーがなさそうなので無視していたが、結構重要なこと書いてある。initial branchの名前としてmasterが使われるらしい。ブランチは履歴管理用の枝分かれのこと。最初のコミットでmasterブランチが自動的に作られ、コミットはブランチを切り替えるまではmasterブランチに追加される。

 

git remote add origin の後にリモートリポジトリのアドレスhttps://github.com/momosagek/m5camera-webcam.gitを貼り付けてリターン

これによって、ローカルリポジトリに、push先のリモートリポジトリが登録されます。originというのは弁当屋のことではなく、リモートリポジトリを表す変数のことで、gitが勝手につけたもの。

usagi@usagi-mba m5camera-webcam % git remote add origin https://github.com/momosagek/m5camera-webcam.git
usagi@usagi-mba m5camera-webcam %

 

 

コミットしてプッシュする

リポジトリに格納したいコードをローカルリポジトリにコピー。本当は、開発しているディレクトリをリモートリポジトリに設定するんだろうな・・・ 

usagi@usagi-mba m5camera-webcam % ls
boot.py main.py webCamera.html

 

 addする

リモートリポジトリにプッシュするファイルは、一旦addしてまとめます。

usagi@usagi-mba m5camera-webcam % git add boot.py

usagi@usagi-mba m5camera-webcam % git add main.py

usagi@usagi-mba m5camera-webcam % git add webCam.html

 

コミットする

ローカルリポジトリにコミットします。引数には、コミット内容がわかるようなコメントをつけます。この作業でmasterブランチにコミットが追加される。

usagi@usagi-mba m5camera-webcam % git commit -m "Create files"

 

pushする

ローカルリポジトリの内容を、リモートリポジトリにコピーします。これで、外部からリモートリポジトリにアクセスして、状態を共有できるようになります。

originの名で登録したリモートリポジトリに、masterブランチ(に追加したコミット)をpushしている。

usagi@usagi-mba m5camera-webcam % git push origin master

 

 

確認してみる

無事にpush完了。

f:id:Pin-Pon-Usagi:20210703112827p:plain

push完了の画面

 

とりあえず使ってみた。