Upgrade to Pro — share decks privately, control downloads, hide ads and more …

社内のGitの運用ルールを作った時の話

 社内のGitの運用ルールを作った時の話

Soejima Karukichi

June 08, 2022
Tweet

More Decks by Soejima Karukichi

Other Decks in Technology

Transcript

  1. カルキチ副島 フロントエンドエンジニア@ショーケース Twitter: @karukichi_yah GitHub: https://github.com/Yota-K 経歴 2020年4月にエンジニアになったので、エンジニアとしての実務経験は2年目で す。 1社目ではWordPressを使ったサイト構築と社内ツール(PHP・Laravel)の開発に

    携わっていました。 2020年5月からショーケースにジョインして、現在は自社SaaSアプリのフロントエ ンド開発(主にTypeScript・React)及び、技術選定に携わっています。 プロフィール
  2. git-flowでのブランチの役割 main(master): プロダクトしてリリースできる状態のブランチ。 リリース時のタグ付けを行う以外、このブランチで作業を行ってはいけません。 develop: 開発用のブランチ。 レビュー済みの内容のみが取り込まれた状態のブランチです。 releaseブランチを切る以外、このブランチで作業を行ってはいけません。 feature: 開発を行うためのブランチ。

    developから分岐してレビューが完了したら、developにマージします。 release: リリース時に使用するブランチ。 developから分岐して、リリース準備(バージョンやREADMEの更新等)が完了したら、 developとmainにマージします。(マージ完了後はすぐに削除します。) hotfix: リリース後にクリティカルなバグが発生した際に使用するブランチ。 mainから分岐して、バグの対応が完了したらmainとdevelopにマージします。(マージ完了後 はすぐに削除します。)
  3. マージをする際の手段のことです。 「Create a merge commit」、「Squash and merge」、「Rebase and merge」の 3種類が存在します。

    マージコミットの有無や、元のコミットログや マージ元のブランチとの関係を残すか残さな いかが異なります。 マージ戦略とは?
  4. Create a merge commit • マージコミット・・・作成される • 元のブランチのコミットログ・・・残る • 元のブランチとの関係・・・残る

    Squash and merge • マージコミット・・・作成される • 元のブランチのコミットログ・・・残らない • 元のブランチとの関係・・・残らない Create a merge commitとの違い