Git基礎
1. バージョン管理の目的
- だれがいつ何のファイルを追加・変更・削除したのかを管理したい
- 修正内容も差分で確認したい
Git以前のバージョン管理
・ファイル名やフォルダ目に日付を入れる
・修正内容を別ファイルに記録
⇒ 修正するたびにファイルが増えていく、修正内容を確認するのに別ファイルと照らし合わさないといけなかったりするので不便
2. 運用フロー(サンプル)
1. mainブランチに切り替える
git checkout main
2. mainブランチの状態を最新にする
git pull
3. 作業ブランチに切り替える
git checkout -b ブランチ名
もしくは
git branch ブランチ名 git checkout ブランチ名
4. ソースの追加など作業を行う
5. 作業を行っている間に他の誰かの変更がmainブランチに反映されている可能性があるので、コミット前に確認する
git stash save "コメント" git checkout main git pull
6. mainブランチに変更があった場合は、変更を作業ブランチにマージする
git checkout ブランチ名 git merge main git stash pop
7. ブランチの変更をローカルにコミットする
TortoiseGitで行う方がやりやすい
- エクスプローラーを開いて、対象のプロジェクトで右クリック
Gitコミット(C)をクリック- 出てきた画面でコミットメッセージを入力し、コミットするファイルを選択する
※コミットメッセージの記述には以下のルールがある
・1行目に実際に作業したチケットのチケットNO、チケット名を記述する
・2行目には何も書かない
・3行目以降に具体的な変更点などを記述する - 画面の左上のコミット先のブランチに誤りがないことを確認して
コミットボタンをクリック
8. ブランチをサーバーにプッシュする
9. プルリクエスト作成・指摘があった場合はソースを修正して再度コミット・プッシュを行う
10. プルリクエストがマージされたらローカルのmainブランチにも変更を反映させる
git checkout main git pull
11. 不要になった場合はブランチを削除する
git branch -d ブランチ名
3. よく使うコマンド
| コマンド | 意味 |
|---|---|
| git add . | 今追加・変更・削除されているファイルをgitの管理下におく |
| git branch | 今存在するブランチの一覧を表示する。 *がついているブランチがカレントブランチ |
| git branch ブランチ名 | 新規でブランチを作成する |
| git branch -m 変更後のブランチ名 | カレントブランチのブランチ名の変更 |
| git branch -d 削除対象のブランチ名 | ブランチの削除 カレントブランチは削除することが出来ない |
| git checkout ブランチ名 | ブランチの切り替え |
| git checkout -b ブランチ名 | 新しくブランチを作成してそのブランチに切り替える |
| git pull | サーバーからカレントブランチと同じ名前のブランチの最新の変更を取り込む |
| git stash save "コメント" | 変更を一時的に退避する |
| git stash list | 保存されているstashの一覧表示 |
| git stash pop | 0番目のstashの取り出し |
| git stash clear | stashの削除 |
| git status | ローカルのfile変更を表示する |
4. TortoiseGitでよくやること
| 項目 | できること |
|---|---|
| Git プル | サーバから最新のソースを持ってくる(mainブランチで行う) |
| プッシュ | サーバにブランチを上げる(pushしたいブランチで行う) |
| Git 変更をチェック | 変更のあるファイルの一覧が表示される |
| 変更の取り消し | 変更を取り消す |
| 切り替え/チェックアウト | ブランチを切り替える |
| マージ | 別のブランチとマージする |
| Git コミット | ローカルに変更をコミットする。※やる前にブランチ名を確認 |
| Git ログを表示 | コミットログを表示する |