Git使い方備忘録
Git Bashの使い方を学び始めたのでメモ
---------Local---------
「cd~」
②「git init」
一番初めだけで大丈夫な気がする。
③「git add .」
dir内のファイル全てをステージへadd
(特定のファイルだけaddしたい場合は「git add example.txt」)
④「git commit -m "comment"」
ステージにaddされたファイルをリポジトリに保存。
⑤「git log」
コミット履歴を確認
⑥diff、status ※未
「git diff」
…リポジトリとワークツリーの差分をチェック
※ワークツリー=指定したディレクトリ
「git diff --staged」
…リポジトリとステージの差分をチェック
「git status」
…変更ファイルを確認
⑦restore ※未
「git restore <ファイル名>」
…ワークツリーの変更を取り消す
「git restore --staged <ファイル名>」
…ステージに挙げた変更をワークツリーに戻す
---------Remote---------
➀「git branch feature」
ブランチを作成
※ブランチの一覧を表示
「git branch」
「git branch --a」Githubを含めたブランチの確認
②「git switch feature」
※HEAD…今自分がいるブランチ
「git switch --c feature」
…feature というブランチを作って、HEADをfeatureに一瞬で切り替える
③「git merge feature」
ブランチをマージ(合併)
変更したブランチをメインのものに統合させる。
「git merge origin(リモート名)/main(ブランチ名)」
※リモート名ってなんだ?よくこのコマンドの意味を理解していない。
Githubでマージする場合?
※コンフリクトに注意!!!
---前回のコミット内容まで元に戻したいとき---------------------------------
「git reset --hard HEAD」
例えばUnityで色々変更をしてよくわからないバグが生じて、
1からやり直したいってときはこのコマンドを使う。
--hardオプションでインデックス、ワーキングツリー全てを戻す。
HEADは最新のcommit idのエイリアス。前回のcommitまで戻したいのだから、HEADを指定する。
(参考URL:【Git】ローカルの修正を前回のcommitまで戻す方法 - Qiita)
※特定のコミットの状態に戻すとき
「git reset --hard (ハッシュ値)」
ハッシュ値…「git log」で調べる。
commit 0f91e00a7f1a7c0a09420c2f2d68256956660e25 (HEAD -> feature)
ただ、ある特定のコミットに戻ると、戻った時点以降にコミットした内容は消えてしまうので注意!
「git revert (ハッシュ値)」
でコミット履歴を残したまま過去に戻れるらしいが、
反映されていない変更履歴が残ってしまい、混乱を招く恐れがあるので非推奨とのこと。
(参考URL:[git] 戻したい時よく使っているコマンドまとめ - Qiita)
----------------------------------------------------------------------
④「git remote add origin http://~」
例)リモートに保存したいGithubアドレスを入力。
※それ専用のフォルダも作っておくといいのではないか。
→今後「origin(リモート名)」という名前を使ってGithubにアクセスできる
string origin = "http://~~" //みたいなイメージ
⑤「git push origin master」
指定したリモートリポジトリに保存!push
「origin」は指定のURLを格納した名前
⑥「git pull origin main」
リモートリポジトリから情報を取得
「git pull」※省略可能
*fetch + merge
⑦プルリクエスト…コードレビューしてーってやつ。
コードに誤りがないかチェック。
●プルリクエストを利用した基本的な開発の流れ
1,今のHEADを確認「git branch」mainを最新に更新「git pull origin main」
2,ブランチを作成「git switch -c feature」
3,ファイル修正・コミット「git add .」「git commit -m ”comment”」
4,プッシュ「git push origin feature」
---Githubへ移動
5,プルリクエスト
「New pull request」
「main」←「feature」みたいに変更
「create pull request」
「title:簡単な変更内容 comment:変更内容の詳細」
クリック「create pull request」
6,コードレビュー
チームで開発する場合、レビューしてもらいたいReviewerを選ぶ、追加するなどして、レビューしてもらう。
全員問題ないようだったら次の段階へ
7,マージ
「merge pull request」
「Delete branch」ブランチは消しておく