はじめに
git 操作はコマンドでやっている人も多いと思うが、GitHub Desktop という GUI が使いやすいので、個人的によく使うものを簡単にコマンドとセットで書いてみる。
インストール方法などは公式ページや他にも記事があるのでここでは書かない。
Repository の変更と確認
GUI 左上から確認できる。また、ここをクリックしメニューを出すことで登録済みの Repository 一覧を見ることができ、変更することができる。
コマンドで言うところの cd
に該当する
cd githubactions-test
Fetch して Pull する
右上の Fetch origin
を押すと、リモートの状態を取得し差分があるかを確認できる。
もし、差分があれば Pull origin
という文字が出るので、それを押すことで更新することができる。
コマンドで言う fetch
, pull
に該当する
git fetch
git pull
Commit する
Repository 内で変更があるファイルは、Changes
タブに表示され、変更ファイルをクリックすることで右側に変更前後の詳細が表示される。
コマンドで言うところの diff
, add
, commit
に該当する
GitHub Desktop で git を操作するときに、明示的に add
コマンドに該当する操作はない。
GitHub Desktop では、commit to {branch}
ボタンを押すと、add
と commit
を同時に行っている (と思っている)
$ git diff
diff --git a/README.md b/README.md
index xxxxxxx..yyyyyyy 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,3 @@
# README
-
+test
git add README.md
$ git commit -m "commit message"
[master zzzzzzz] commit message
1 file changed, 1 insertion(+), 1 deletion(-)
Push する
Commit をすると、右上のボタンが Push origin
という文字に変わる。
ここをクリックすることで push することができる。
コマンドで言うと push
に該当する
git push origin master
Branch を切り替える
branch 切り替えや、新しい branch を作成する際は Current branch
と記載のあるタブで操作する
branch を切り替える際は Other branches
の中から選択することで切り替えることができる。
また、新規作成する場合は New branch
を選択し、以下の画面で Name
を入力し、Create branch
することで新規 branch を作ることができる。
切り替え/作成する際、変更ファイルが残っていると、そのブランチに置いていくか、移動先に持っていくかを選択できる。
コマンドで言うと checkout
に該当する
feature/hoge
に切り替える
$ git checkout feature/hoge
Switched to a new branch 'feature/hoge'
M README.md
branch 'feature/hoge' set up to track 'origin/feature/hoge'.
feature/test
を作成し切り替える
$ git checkout -b feature/test
Switched to a new branch 'feature/test'
Merge する
現在いる branch に他の branch の変更を取り入れる、merge
を行う。
merge を行うには、Current branch
タブの中の一番下、Chose a branch to merge into master
を選択
するとこのような画面になるので、Merge したい branch を選択し、Create a merge commit
を押すことで merge することができる。
コマンドで言うと merge
に該当する
$ git merge feature/test
Merge made by the 'ort' strategy.
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
変更の Stash や Discard をする
簡単に言えば変更の一時破棄 (Stash) と完全破棄 (Discard)。
Stash が存在すると Changes の下に Stashed Changes
という枠が出てくる。これを選択すると右側に stash された変更が表示され、Restore (復元) するか、Discard (破棄) するかを選択できる。
Stash が残っているとその分ディスク容量を食うっぽいので、なるべくなくしておくといいかも?
現在の変更を手動で Stash する場合は、変更ファイル数が書いてあるところを右クリックして選ぶ。
Discard の場合は前述の手順ですべてを破棄か、ファイルごとに右クリックすることでファイル指定の破棄ができる。
コマンドで言うと stash
, checkout .
に該当する
stash する
$ git stash -u
Saved working directory and index state WIP on master: xxxxxxx commit
stash のリストを確認する
$ git stash list
stash@{0}: WIP on master: xxxxxxx commit
stash を戻す
$ git stash apply stash@{0}
On branch master
Your branch is up to date with 'origin/master'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: README.md
no changes added to commit (use "git add" and/or "git commit -a")
変更を取り消す
$ git checkout .
Updated 1 path from the index
参考