Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ
Search
Kazumi OHIRA
August 05, 2023
Technology
1
2.7k
地味だけど劇的に便利になるGitHubリポジトリ設定あれこれ
「GitHub dockyardコミュニティ 竣工イベント!」でお話した資料です。
https://github-dockyard.connpass.com/event/289714/
Kazumi OHIRA
August 05, 2023
Tweet
Share
More Decks by Kazumi OHIRA
See All by Kazumi OHIRA
【再】#2 GitHub Copilot Enterprise&GitHub Actionsナレッジ オープニング資料
dzeyelid
0
120
GitHub最新情報キャッチアップ 2024年3月
dzeyelid
17
5.8k
GitHub dockyardコミュニティ 竣工イベント!オープニング資料
dzeyelid
0
320
GitHub最新情報キャッチアップ 2023年6月
dzeyelid
2
3.4k
GitHub と Azure でアプリケーションとインフラストラクチャの守りを固めるDevSecOps
dzeyelid
1
260
高さ比べじゃない、キャリアは歩んできた道
dzeyelid
0
610
GitHub Copilotとともに次の開発体験へ
dzeyelid
1
410
突如登場したAzure Developer CLIでなにができるのか?検証してみる
dzeyelid
0
140
GitHub Actions と Azure PaaS でプルリクエストごとに環境を ~ Azure Static Web Apps と Container Apps
dzeyelid
0
220
Other Decks in Technology
See All in Technology
リアーキテクティングのその先へ 〜品質と開発生産性の壁を越えるプラットフォーム戦略〜 / architecture-con2025
visional_engineering_and_design
0
4.8k
pmconf 2025 大阪「生成AI時代に未来を切り開くためのプロダクト戦略:圧倒的生産性を実現するためのプロダクトサイクロン」 / The Product Cyclone for Outstanding Productivity
yamamuteki
3
2k
AIを前提に、業務を”再構築”せよ IVRyの9ヶ月にわたる挑戦と未来の働き方 (BTCONJP2025)
yueda256
1
800
re:Invent2025 事前勉強会 歴史と愉しみ方10分LT編
toshi_atsumi
0
240
技術広報のOKRで生み出す 開発組織への価値 〜 カンファレンス協賛を通して育む学びの文化 〜 / Creating Value for Development Organisations Through Technical Communications OKRs — Nurturing a Culture of Learning Through Conference Sponsorship —
pauli
5
500
身近なCSVを活用する!AWSのデータ分析基盤アーキテクチャ
koosun
0
3.6k
その意思決定、まだ続けるんですか? ~痛みを超えて未来を作る、AI時代の撤退とピボットの技術~
applism118
34
21k
Javaコミュニティの歩き方 ~参加から貢献まで、すべて教えます~
tabatad
0
140
AIエージェントによるエンタープライズ向けスライド検索!
shibuiwilliam
4
660
LINEギフト・LINEコマース領域の開発
lycorptech_jp
PRO
0
350
改竄して学ぶコンテナサプライチェーンセキュリティ ~コンテナイメージの完全性を目指して~/tampering-container-supplychain-security
mochizuki875
1
370
マルチドライブアーキテクチャ: 複数の駆動力でプロダクトを前進させる
knih
0
7.8k
Featured
See All Featured
Unsuck your backbone
ammeep
671
58k
How to Ace a Technical Interview
jacobian
280
24k
Practical Orchestrator
shlominoach
190
11k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Building Adaptive Systems
keathley
44
2.8k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
9
980
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Transcript
地味だけど劇的に便利になる リポジトリ設定あれこれ (と、Codespaces布教) GitHub dockyardコミュニティ 竣工イベント! https://github-dockyard.connpass.com/event/289714/
岩永かづみ / Kazumi IWANAGA • GitHub公認トレーナー • ZEN Architects 所属
• Microsoft MVP for Azure • 得意な領域 • Infrastructure as Code • GitHub Actions による自動化 • 技術コミュニティ • Code Polaris / Hack Everything. • @dz_ • @dzeyelid • @dzeyelid • dzeyelid
そのGitHubリポジトリは 真の力を発揮しているか?
親しんできたリポジトリ機能、 実はめっちゃ更新されているんですよ
リポジトリの使い勝手をグレードアップするぞ • リポジトリのSettingsのGeneralを見直す • Branch protection rulesとRepository rulesets • Dependabotで依存関係の脆弱性スキャンを導入する
• Secret scanningのpush protectionを知ってほしい*
リポジトリを越えたオススメ • GitHub CopilotとGitHub Copilot X • Codespacesの便利さを知ってもらいたい
まずは、 リポジトリSettingsのGeneralから👇
プルリクエストのマージをちょっと便利に プルリクエストのマージ方法を、制限することができる • 「マージ コミット」(git mergeで作られる)を許可する • プルリクエストに含まれるコミットを1コミットにまとめる • プルリクエストに含まれるコミットをrebaseでマージする
Squash mergingがおすすめ このとき設定されるコミットメッセージが、初期値 (Default message)だと「最初のコミットメッセージ」 が採用されて不便 Default to pull request
titleを指定することで、プル リクエストのタイトルがコミットメッセージに採用される • Squash = 押しつぶす • プルリクエストのコミットを1コミットにまとめて、マージする
プルリクエストを最新に保ちやすくする プルリクエストのbase branch(マージ先)に更新が ある場合に、更新するためのUIが有効になる
プルリクエストでブランチ更新が促される
プルリクエストのマージで作業ブランチ削除 プルリクエストがマージされたら、 作業ブランチを自動的に削除する
Branch protection rulesと Repository rulesets👇
Branch protection rules
Branch protection rules • 指定したブランチに対し、保護ルールを設定できる • force pushを禁止する • ブランチの削除を禁止する
• マージするには、必ずPull requestを要求する • Pull requestをマージするには、必ずApprovalを要求する、など • パブリックリポジトリ、またはGitHub Pro/Team/Enterprise Cloud契約下のプライベートリポジトリで利用できる • 参考: Check! GitHub Branch protection rulesの機能一覧
Repository rulesets
Repository rulesets • 突如登場し、7/24にGA🎉 • 参考: GitHub Repository Rules are
now generally available - The GitHub Blog • パブリックリポジトリ、またはGitHub Pro/Team/Enterprise Cloud契約下のプライベートリポジトリで利用できる • Branch protection rulesの後継、より柔軟な制御ができる • Branch protection rulesとの最大の違いは、Organizationレベルで指定 できること👏 • 参考: Check! GitHub Repository rulesetsとは?
手軽だけど強力なセキュリティ対策👇
Dependabot
Dependabot • リポジトリの依存関係をスキャンし、脆弱性を検出してくれる • スキャンの対象はデフォルトブランチ • すべてのリポジトリで無料で利用できる🎉 種類 説明 Dependabot
alerts 脆弱性が検出された場合に、通知する GitHub.comの「Security」タブで一覧、招待を確認できる Dependabot security updates Dependabot alertsによって検出された脆弱性の修正案について、プ ルリクエストを作成する Dependabot version updates 指定した対象のバージョンの更新について、プルリクエストを作成する Dependency review(※) デフォルトブランチにマージする前に検出したい場合に、GitHub ActionsのDependency reviewアクションを利用する ※GitHub Enterprise CloudのGitHub Advanced Securityライセンスが必要
Dependabotの有効化
Dependabot alertsの一覧
Dependabot alertsの詳細
Dependabot security updatesにより 発行されたプルリクエスト
Dependabot version updatesにより 発行されたプルリクエスト
Dependabot version updatesの設定 .github/dependabot.ymlに設定を書く
Secret scanningの push protection
Secret scanning • リポジトリのすべてのブランチ上の Git 履歴全体をスキャンし、シーク レットが検出されるとそのシークレットを提供するプロバイダへ通知す る • 通知を受けたプロバイダは対策を行う(無効化、利用者への通知など)
• パブリックリポジトリ、またはGitHub Enterprise CloudのGitHub Advanced Security(GHAS)ライセンスが適用されているプライ ベート/internalリポジトリで利用できる • リポジトリにプッシュする前に検出したい場合は、Push protectionを 利用する
Secret scanningの有効化
Secret scanningのPush protection • Gitでプッシュするとき、コミット内容にシークレットが含まれていたら 弾いてくれる🚨 • リポジトリにプッシュされる前に防ぐことができる! • 参考:
【GitHub】シークレット スキャンのプッシュ保護でシークレット の流出を固く防ぐ!
GitHub CopilotとGitHub Copilot X 🧑✈️
GitHub CopilotとGitHub Copilot X • GitHub Copilotは、AIによるコード補完 • GitHub Copilot
Xは、次に予定されているAIによる支援機能群 機能 説明 GitHub Copilot(現行) コード補完 GitHub Copilot X GitHub Copilot Chat チャット形式のAIによる支援 (OrganizationでPublic beta公開) GitHub Copilot X GitHub Copilot for Docs ドキュメントにフォーカスしたAIによる支援 GitHub Copilot X GitHub Copilot for Pull Requests プルリクエストにフォーカスしたAIによる支援 GitHub Copilot X GitHub Copilot for CLI CLIの利用をAIにより支援
Codespacesの便利さを知ってもらいたい 🔮
GitHub Codespacesのおすすめポイント • コンテナベースのリモート環境 • Dev containerでカスタマイズ • VS Codeの拡張機能のインストールを指定できる
• Pay as you go(稼働時間+ボリュームのストレージ利用量) • 無料枠あり(60h/core、1インスタンスを業後や週末に使うくらいなら十分) • あたかもローカルかのようにlocalhostに接続できる(Port forwarding) • イメージを事前にビルドしておくこともできる(prebuild)
Thank you so much🍩.