0Pricing
Git & GitHub Professional Workflow · レッスン

トランクベース開発

トランクベース開発のモデル、短命なブランチ、フィーチャーフラグについて学び、Gitflow に代わる軽量な開発手法を理解します。

「トランクベース開発」はCoddyKit上の無料Git & GitHub Professional Workflowレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはGit & GitHub Professional Workflow学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Git & GitHub Professional Workflowコースには全4レッスンが含まれています。

トランクベース開発とは

トランクベース開発は、すべての開発者が 1 つの共有ブランチ(トランク。通常は main)に小さな変更を非常に頻繁に統合するブランチ戦略です。

長期間存続するブランチよりも、多数の小さなマージを重視します。

長期間存続するブランチを避ける理由

数週間存続するブランチは main から大きくずれ、マージが困難になります。

  • ブランチの存続期間が長いほど、競合が増えます
  • 統合のリスクが最後まで見えません
  • コードレビューの待ち行列が大きくなります

短命のブランチ

トランクベース開発では、ブランチは数時間から 1〜2 日だけ存続し、その後マージされます。ブランチを作成し、対象を絞って作業し、すばやくマージします。

git checkout -b add-login
# small focused change
git commit -m 'Add login button'
git push origin add-login

トランクに直接コミットする

小規模でリスクの低いチームでは、高速な CI ゲートのもとで main に直接コミットすることがあります。すべてのコミットで、トランクをリリース可能な状態に保つ必要があります。

git checkout main
git pull --rebase
git commit -m 'Fix typo in footer'
git push

フィーチャーフラグ

未完成の機能もトランクにマージしますが、準備が整うまではフィーチャーフラグの背後に隠しておきます。これにより、デプロイとリリースを分離できます。

if (featureFlags.newCheckout) {
  renderNewCheckout();
} else {
  renderOldCheckout();
}

継続的インテグレーションは必須

全員が常にトランクへマージするため、すべての push で自動テストを実行し、main をグリーンでデプロイ可能な状態に保つことが不可欠です。

トランクベース開発と Gitflow の比較

Gitflow では、develop、release、feature など、長期間存続する複数のブランチを使います。トランクベース開発では、1 つの main ブランチと短命の小さなブランチを使います。

  • トランクベース開発は継続的デリバリーに適しています
  • Gitflow はスケジュールに沿ったバージョン付きリリースに適しています

例外としてのリリースブランチ

トランクベース開発のチームでも、バージョンを安定させる目的に限り、短期間のリリースブランチを作成することがあります。そのブランチに修正を cherry-pick します。

git checkout -b release/1.4 main

ブランチを同期した状態に保つ

競合を最小限に抑えるため、マージ前に短命のブランチを最新のトランクへ rebase します。

git fetch origin
git rebase origin/main

すばやくマージして戻す

CI が成功したら、短命のブランチをマージして削除します。新しいブランチを作成して、サイクルを再開します。

git checkout main
git merge --no-ff add-login
git branch -d add-login

トランクベース開発を選ぶ場面

頻繁にリリースし、強力な CI があり、マージ地獄を避けたい場合は、トランクベース開発を選びます。継続的デプロイと自然に組み合わせられます。

理解度チェック

トランクベース開発についての理解度を確認します。

まとめ

トランクベースモデルについて学びました。

  • 1 つの共有トランクと、多数の短命な小さなブランチを使います
  • フィーチャーフラグで未完成の作業を隠します
  • 強力な CI によって、トランクを常にリリース可能な状態に保ちます
  • Gitflow の長期間存続するブランチとは対照的です

よくある質問

「トランクベース開発」レッスンは無料ですか?

はい。「トランクベース開発」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Git & GitHub Professional Workflowコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Git & GitHub Professional Workflowコースには全4レッスンが含まれています。

「トランクベース開発」で何を学びますか?

トランクベース開発のモデル、短命なブランチ、フィーチャーフラグについて学び、Gitflow に代わる軽量な開発手法を理解します。 ブラウザで直接実行するハンズオンコードでGit & GitHub Professional Workflowを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Git & GitHub Professional Workflowを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのGit & GitHub Professional Workflowは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「トランクベース開発」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このGit & GitHub Professional Workflowレッスンでコードを書いて実行できますか?

はい。すべてのGit & GitHub Professional Workflowレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. フィーチャーブランチワークフロー
  2. Gitflowワークフロー入門
  3. RebaseとMergeの比較
  4. トランクベース開発
← Git & GitHub Professional Workflowに戻る