はじめに
SVNを最近使用しているが、Gitにも慣れておく必要があると常々感じている。今まではSourceTreeやTortoiseGitなどのGUIを使用していたが、そろそろCUIへの苦手意識を克服したい!!!
そこでここでは、(自分用に)ローカルリポジトリの作成からリモートリポジトリへのプッシュまでの基本的な流れについてまとめる。
学習目的
- Git CUI苦手意識を取り除く
- コマンド操作になれる
- バージョン管理システムを用いた開発に慣れる(今後を意識して)
環境
- MacOS BigSur ver11.6
- Git:2.29.2
ターミナルを使用
Gitに慣れよう!!!
ここでは、以下のサイトを参考に進めていく]
Gitのインストールがまだの方はインストールを。
1.ローカルリポジトリの作成
ローカルリポジトリを作りたいディレクトリまで移動して、以下のコマンドを実行
//ディレクトリ作成
mkdir study
//作成したディレクトリに移動
cd study
//ローカルリポジトリの作成
git init
Initialized empty Git repository in ディレクトリパス
のようなメッセージが表示され、ディレクトリ内に.git
というディレクトリが作成されていればOK
2.ローカルリポジトリにコミットをする
1.で作成したディレクトリ内で適当にファイルを作成します。
例)index.html
ここで一回git status
で現在の状況を確認します。
//git statusコマンドで状況を確認
git status
//コマンド実行結果
$ git status
On branch master
No commits yet
Untracked files:
(use "git add <file>..." to include in what will be committed)
index.html
nothing added to commit but untracked files present (use "git add" to track)
Untraced files
のところに、index.htmlがあることがわかる。これはまだ追跡されていないファイルということである。
状況がわかったため、インデックスへ追加しコミットをする。
※インデックスとは、コミット前に変更内容を一時的に保存する領域のこと。インデックスに追加されたファイルがコミットの対象となる。
//インデックスへ追加(追加するファイルを指定する場合)
git add ファイル名
例)git add index.html
//インデックスへ追加(カレントディレクトリにある全てのファイルを追加する場合)
git add .
//-mオプションで、コミットメッセージをつけることができる。
git commit -m コミットメッセージ
例)git commit -m "Add:first commit"
コミットできているか確認するには、git log
コマンドで確認できる。
$ git log
commit コミットハッシュ (HEAD -> master)
Author: ユーザー名 <メールアドレス>
Date: Sat Nov 27 14:15:59 2021 +0900
Add:first commit
3.リモートリポジトリの作成とプッシュ
ローカルリポジトリの変更をリモートリポジトリに反映させる。
まずは、リモートリポジトリを作成する。
Github上で作成する。作成したら、ローカルリポジトリとリモートリポジトリを紐づける。
Github上のリポジトリのページにある「Code>HTTPS」に記載のURL(https://github.com/ユーザ/○○.git)
をコピーする。そして以下のコマンドを実行することで紐付けができる。
//ローカルとリモートのリポジトリを紐づける
git remote add origin https://github.com/ユーザ/○○.git
//ローカルの内容をリモートリポジトリに反映させる
git push origin master
git push を行うとGithubのユーザー名とパスワードが求められる。
しかし、2021年8月よりパスワードの認証ではなくアクセストークンによる認証になった。
脆弱性防止のためとのこと。
remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.
ということで、以下の記事を参考にアクセストークンを作成する。
作成できたら、再度pushを行いユーザー名と作成したアクセストークンを入力することでpush完了。
※追記
GitHubでは、デフォルトのブランチがmasterからmainに変わっている。
ただ、git initで生成する際はmasterで生成されている。
生成される際のデフォルトをmainにしたり、GitHub上のデフォルトをmasterにするなどすると良さそう
まとめ
今回は、GitCUIの初歩の初歩についてまとめた。
正直自宅でのちょっとした開発であれば、自分だけしか見ないのでバージョン管理するまでもないといえばそうである。ただ、いきなり業務で使うにはハードルが高いので、こういった間違えても問題ない自宅学習で慣れておくことが大事だと思う。
とりあえず、学習の一環でChromeの拡張機能でも作ってみようと思っているのでついでにめんどくさがらずgitで管理もしようと思います。
以上
参考