git & GitHub についての覺書 (28.3.1)
以前に書いたものと合はせて、改めて。
configuration
新しい環境でgitを使ふ前の段取り。
- $ git config --global user.name "hoge" でユーザ名を設定する。
- $ git config --global user.email "hoge@hogehoge" でユーザのメールアドレスを設定する。
- 好みにより、$ git config --global push.default current で、pushすると現在のブランチをリモートに同名でプッシュするやうに設定する。
- $ git config -l で設定を確認する。
create repository
初めて GitHub に上げる手順。
- ローカルレポジトリを構築する。
- $ git init でローカルレポジトリを初期化する。
- $ git add でファイルを追加する。
- $ git commit でローカルレポジトリへファイル追加をコミットする。
- リモート(GitHub)に反映させる。
- GitHubで新しいレポジトリを作る。以降の段取りはレポジトリ作成時にGitHubが敎へてくれたと記錄されてゐるが、一往示しておく。
- $ git remote add origin git@github.com:<userid>/<repository>.git でリモート(今し方作つたGitHubのレポジトリ)を登錄する。
- $ git push -u origin master でGitHubに反映させる。
clone
GitHubからレポジトリを取得する。
- $ git clone git@github.com:<userid>/<repository>.git
同上。この場合はHTTPS通信で取得し、その後、HTTPS通信でpush/pullするのが怠いからSSH通信に切り替へる。
- $ git clone https://github.com/<user>/<repo>.git
- $ git remote set-url origin git@github.com:<user>/<repo>.git
更新
ファイルを編輯した後、GitHubに反映させるまでの段取り。
- $ git add <NEWFILES>
- $ git add -u
- $ git commit
- $ git push
タグを附ける。
- $ git tag <tagname>
- $ git push origin <tagname>
確認
狀態を確認する。
- $ git status
originを確認する。
- $ git remote get-url origin
タグを確認する。
- $ git tag
ブランチを確認する。
- $ git branch [-a/-r]
ブランチ關聯
ブランチを作る。
- $ git branch <branchname>
リモートのブランチをローカルに取り込む。
- $ git branch <branchname> origin/<branchname>
ブランチを移動する。
- $ git checkout <branchname>
- あるいは git switch <branchname> としてもよいが、今後變更の可能性もあるとか何とか。
新しいブランチを作り、直ちに作成したブランチに移動する。
- $ git checkout -b <branchname>
リモートのブランチを取り込み、そのブランチに移動する。
- $ git checkout -b <branchname> origin/<branchname>
指定するブランチを今のブランチにマージする。
- $ git merge <branchname>
ブランチを削除する。強制的に削除するときは -d に替へて -D とするらしい。
- $ git branch -d <branchname>
ブランチの根本を附け替へる。
- $ git rebase <rootbranch>
卷き戾し
ファイルを以前のコミットした時點の狀態に戾す。
- $ git reset --hard <filename>
- あるいは git restore [--worktree] <filename> としてもよいが、今後變更される可能性があるとか何とか(【後日追記:R6.3.28】結局どうなつてるのか未確認)。
- ちなみに、單に git reset <filename> とした場合、git add <filename> が取り消されるのみでファイルそのものは元に戾らない模樣。git restore --staged <filename> としても同じ。
履歴
- 作成 H28.3.1
- 修正 R1.7.18
- 修正 R3.4.30
- 修正 R3.5.4
- 修正 R3.12.5
- 修正・改題 R6.3.28