Lusy(Lumos System Team)向けの Git / GitHub 練習用リポジトリです。
読むだけの研修ではありません。このリポジトリで実際にBranchを作り、ファイルを編集し、 Commit・Push・Pull Request・Review・Merge・Conflict解消までを 手を動かして 行います。
Gitコマンドを暗記することではなく、
チーム開発でGit/GitHubを安全に使えるようになること
を目的とします。
- 管理者があなた専用の Issue を1件作成します。そのIssueがあなたの進行表です。
- Issueのチェックリストを上から順に進めます。
- 各ステップに実習ページへのリンクがあります。用語やコマンドで詰まったら
docs/を引きます。 - すべてのチェックが付いたら、Issueを Close して研修完了です。
このリポジトリでは 意図的に失敗して構いません。 Branchを間違える・Commitを間違える・Conflictを起こす・Commitを取り消す。 壊し方と直し方の両方を、実際の開発Repositoryに入る前に経験してください。
main への直接Pushは禁止です。必ずPull Request経由で変更してください。
⚠️ このリポジトリは現在、技術的にはmainへの直接Pushができてしまいます。 Branch Protectionを設定したいのですが、Private RepositoryかつGitHub Freeプランのため 現時点では有効化できません(docs/admin-setup.md に詳細)。 GitHubが止めてくれないので、ルールとして各自が守ってください。 誤ってPushしてしまった場合は、隠さずに管理者へ報告してください。
| # | 実習 | 学ぶこと |
|---|---|---|
| 1 | CloneからPull Requestまで | clone / switch -c / add / commit / push / PR |
| 2 | Pull Request Review | Review / Comment / 指摘対応の追加Push |
| 3 | PullとFetch | fetchとpullの違い / log --graph |
| 4 | 変更を取り消す | restore / restore --staged |
| 5 | Stash | 作業途中の一時退避 |
| 6 | Conflictを解消する | Conflictの発生と解消 |
| 7 | Commitを取り消す | revert / reset --soft / reset --hard |
実習の一覧と所要時間は exercises/README.md にあります。
| ページ | 内容 |
|---|---|
| 01 Concepts | GitとGitHubの違い / 最低限理解する用語 |
| 02 Rules | Lusyでの基本ルール(6つ) |
| 03 Setup | 事前準備(初回のみ) |
| 04 Commands | Gitコマンド解説 |
| 05 Conventions | Commit / Branch / PR / Review の書き方 |
| 06 Troubleshooting | 困ったときの確認順序 / 危険な操作 |
| 99 Cheatsheet | コマンド早見表 |
まだGitの初期設定をしていない人は、先に 事前準備 を済ませてください。
git --version
git config --global user.name
git config --global user.email3つとも値が表示されればOKです。準備ができたら 実習1 へ進みます。
Gitで分からなくなったら、むやみにコマンドを実行しないでください。 まずこれです。
git status詳しい確認手順は 06 Troubleshooting にあります。
それでも解決しない場合は、自分のIssueに git status の出力を貼って質問してください。
.
├── README.md この入口
├── docs/ リファレンス(引くための資料)
├── exercises/ 実習1〜7の手順
├── members/ 各自のプロフィールファイルを置く場所
├── conflict-training/ Conflict実習用のファイル
├── scripts/ 管理者用スクリプト
└── .github/ Issue / PR テンプレート、CI
リポジトリの初期設定(Branch Protection、CODEOWNERS、Conflict用Seed Branch、メンバー分のIssue作成)は docs/admin-setup.md を参照してください。
本研修は以下の公式ドキュメントを基準としています。 不明なGitコマンドは、ブログ等ではなくまず公式Referenceを確認してください。