前書き
個人用でまとめました。今後必要に応じて編集したいです。
バージョン確認
$ git --version
git version 2.33.0.windows.2 //環境
準備
- ユーザ情報を設定する。githubに登録されているユーザ名とメールアドレスを使用する。
$ git config --global user.name "First-name Family-name"
$ git config --global user.email "username@example.com"
- 設定確認
-l (--list) ・・・ 一覧を表示
--global ・・・ 特定ユーザのconfig(設定情報)
$ git config -l
$ git config --global -l
リモートにファイルプッシュ流れ
① 新しいリモートリポジトリ作成し、リンクをメモする。
「https://github.com/ユーザ名/リポジトリ名.git」
② ローカルリポジトリ用のファイルを作成し、移動する。
mkdir
(ファイル作成)やcd
(移動)コマンドで作成したいファイル内に移動する。
もしくはすでにあるプロジェクトファイルに移動する。
③ ローカルリポジトリを新規作成する。
指定したディレクトリに「.git」というリポジトリを構成するディレクトリが作成される。
$ git init
④ README.mdファイルを追加する。必要に応じて後で編集する。
echo "# リポジトリ名" >> README.md
⑤ git status
を使い、現在のリポジトリの状態を確認できる。追加したファイルが赤いファイル名になっていて、これはgit管理対象外にあるを意味し、リモートにプッシュする場合は管理対象にする必要がある。
⑥ ファイルを管理対象にする。これはディレクトリのファイルをインデックスに追加すると同じ意味。
$ git add ファイル名(相対パスを含む)
すべてのファイル追加する場合、以下のように書く(こっちのほうが便利)
$ git add .
するとgit status
で確認してみると、ファイル名が緑になった。
⑦ コミット
追加したファイルに対して、メッセージをつけてコミットする。自分は何を変更したかを知らせするためである。
-m オプションで新規コミット
--amend オプションで直前のコミットを上書きする。
git log
でコミットの記録を確認できる。
$ git commit -m "ここにメッセージを書く"
⑧ 現在のデフォルトブランチ名を強制にmainに変更する。一般にデフォルトブランチ名にmasterというのがあるが、人権運動によってmainに変わったので、変更した方がいい。
$ git branch -M main
⑨ アップロードできるようにするため、リモートリポジトリを登録する。最初に目もしたURLを使う。なお、originはリモートリポジトリのURLの別名を指す。URLがoriginとして登録されたイメージ。
$ git remote add origin https://github.com/ユーザ名/リポジトリ名.git
他に、
git remote
リモートリポジトリ一覧表示(オプションなし)
git remote -v
リモートリポジトリ一覧表示一覧表示(URLも表示)
⑩ mainからプッシュする。githubにアップされる。
-u 今回対象とするブランチを上流ブランチとして設定する。
普通はmainじゃなくてブランチからpushするほうが多い。
$ git push -u origin main
⑪ 以降の作業として、新しいファイルを開発環境もしくはエディタで編集し、追加する。
git add .
→$ git commit -m "ここにメッセージを書く"
→git push origin ブランチ名
な流れで行い、必要に応じてgit status
や git log
で状態を見る。
ブランチ
- mainから branch1という名前のbranchに切り替える(初回)
$ git checkout -b branch1 master
- ブランチのプッシュ
$ git push origin branch1
- main側 or ブランチに切り替える
$ git checkout main/branch1
- ブランチを確認する
$ git branch
マージ
① コマンドでのやり方
- マージするときはマージ先に移動(例えばmainへマージする場合)
$ git checkout main
- ブランチbranch1をマージする
$ git merge branch1
- プッシュする
$ git push origin
② githubでのやり方
- branch1をリモートサーバにプッシュする
- compare & pull request を押す
- create pull request を押す(マージしてくださいという依頼)
- merge pull request を押す(マージする)
- confirm merge を押す(最後の確認)