-
Notifications
You must be signed in to change notification settings - Fork 0
MS_GitHubFoundationsMSLearn
- 戻る(GitHub Foundations)
- GitHub Foundations - 学習ガイドPDF
- GitHub Foundations トレーニング
- GitHub Foundaitons ハンズオン
- GitHub Foundaitons MS Learn Collections
- LinkedIn Prepare for the GitHub Foundations Certification
- GitHub Foundations模擬試験
https://learn.microsoft.com/en-us/collections/o1njfe825p602p
| タイトル | 時間 |
|---|---|
| Introduction to Git | 31 min |
| Introduction to GitHub | 1 hr 32 min |
| Introduction to GitHub's products | 23 min |
| Introduction to GitHub Copilot | 19 min |
| Code with GitHub Codespaces | 27 min |
| Manage your work with GitHub Projects | 36 min |
| Communicate effectively on GitHub using Markdown | 1 hr 6 min |
| Contribute to an open-source project on GitHub | 27 min |
| Manage an InnerSource program by using GitHub | 50 min |
| Maintain a secure repository by using GitHub best practices | 35 min |
| Introduction to GitHub administration | 27 min |
| Authenticate and authorize user identities on GitHub | 33 min |
| Manage repository changes by using pull requests on GitHub | 49 min |
| Search and organize repository history by using GitHub | 38 min |
| Using GitHub Copilot with Python | 22 min |
移行メモ(ページ名の綴り): 元ページ名の「Foundaitons」は
「Foundations」の綴り間違いだが、ページ名としてはそのままとした
(ファイル名のみ正しい綴りに正規化した)。
以下、GitHub Foundaitons ハンズオンとの
差分情報のみをポイント
- Introduction 3 min
- What is version control? 5 min
- Exercise - Try out Git 5 min
- Basic Git commands 10 min
-
Knowledge check 5 min
- バージョン管理システム(VCS)≒ ソフトウェア構成管理 (SCM) システム
- GitHub は、Web サイトまたはコマンド ライン ツールから
アクセスできるリモート リポジトリ - (Git ホスティングサービスとか、そう言う、言い方はしていないが、
コレは意図的なのだろうか?)
-
Summary 3 min
Introduction to Git Recap | Learn with Dr G(Git 入門の要約 | Dr G と一緒に学ぶ)
https://www.youtube.com/watch?v=9uGS1ak_FGg
Git の基本操作を復習、Git の初心者向けに実践的なコマンドを解説する内容
-
Git のセットアップ
- ユーザー設定:
git configを使用して、Git にユーザー名とメールアドレスを設定。 - リポジトリの作成:
git initで新しいリポジトリ(例: cats)を作成。 - ファイルの追加:
index.htmlを作成し、git statusで状態を確認。
- ユーザー設定:
-
ファイルの追跡とコミット
-
git add .でファイルを追跡対象に追加。 -
git commit -m "Initial commit"でバージョンを保存。 -
git logで履歴を確認。
-
-
変更の追加とコミットの管理
-
git diffで変更点を確認。 -
git commit -a -m "Updated index.html"で変更を保存。 -
.gitignoreファイルを追加し、不要なファイルを除外。
-
-
ファイルの削除と復元
- 間違って削除した場合:
-
rm index.htmlの後、git checkout -- index.htmlで復元。 -
git rm index.htmlをした場合は、git reset HEAD index.htmlで復元。
-
- 間違って削除した場合:
-
コミットの取り消しと修正
- 直前のコミットの修正:
git commit --amend --no-editで微修正。 - 誤った変更の取り消し:
git revert HEADで直前のコミットを打ち消す。 - 特定のコミットに戻る:
-
git checkout <commit-hash> .で指定のコミットに戻す。 -
git reset --hard <commit-hash>で完全に巻き戻し可能。
-
- 直前のコミットの修正:
-
まとめと今後の予定
- Git の基本的な操作(セットアップ、変更の追跡、コミット、削除・復元、
履歴管理)を復習。 - 今後のライブ配信で、コミットの統合(squash)などの高度なトピックを解説予定。
- 詳細な学習モジュール: aka.ms/LearnWithDrG/IntroToGit
- Git の基本的な操作(セットアップ、変更の追跡、コミット、削除・復元、
補足(
git checkoutは 2 つに分かれた): 上記の
git checkout -- <file>(復元)とgit checkout <commit>(切替)は、
Git 2.23 以降 **git restore(復元)とgit switch(切替)**に
分離された。git checkoutも引き続き使えるが、
用途が 2 つ混ざっていて分かりにくいため、新しいコマンドが推奨される。
模擬試験の
「git switch -cでブランチ作成」もこの流れである。
-
Introduction 2 min
-
What is GitHub? 8 min
-
Components of the GitHub flow 8 min
-
GitHub is a collaborative platform 8 min
-
GitHub platform management 4 min
-
Exercise - A guided tour of GitHub 58 min
https://github.com/skills/introduction-to-github
-
Knowledge check 3 min
- GitHub プロジェクトにバグを報告する最適な方法は問題(Issue)
- プルリクエストの話 1(ブランチ、修正、プルリク、マージ)
- プルリクエストの話 2(書込権限が無い場合はフォーク&クローンして修正、
プッシュ、プルリク)
-
Summary 1 min
https://github.com/skills/introduction-to-github
- Introduction 1 min
- GitHub accounts and plans 10 min
- GitHub Mobile and GitHub Desktop 4 min
- GitHub billing 3 min
-
Knowledge check 4 min
- 組織アカウントは共有アカウント、個人アカウントは個人用
- Enterprise プランで複数の組織にまたがるユーザーとリポジトリを一元的に管理
- チームで会社またはグループの構造を反映
(カスケード アクセス権限を提供し、メンションを介して
すべてのチーム メンバーに簡単に通知)
-
Summary 1 min
- アカウントの種類: 個人、組織、企業
- プラン: 個人と組織向けの Free、個人向けの Pro、組織向けの Team、
企業向けの Enterprise。 - GitHub Mobile および GitHub Desktop で GitHub にアクセスする際に
関連する機能。 - GitHub の請求と支払い(個人向け従量課金、組織向けサブスクリプション課金)
-
Introduction 1 min
-
GitHub Copilot, your AI pair programmer 2 min
-
Interact with Copilot 2 min
-
Set up, configure, and troubleshoot GitHub Copilot 7 min
-
Exercise - Develop with AI-powered code suggestions by using
GitHub Copilot and VS Code 1 min
https://github.com/skills/copilot-codespaces-vscode?tab=readme-ov-file
-
Knowledge check 5 min
- AI ペア プログラマー
- 現在の GitHub Copilot は、OpenAI Codex ではなく、より新しい GPT-4 を使用
- IDE として VS Code、Visual Studio、Neovim、JetBrains をサポート
- Business と Enterprise:IP 補償と追加のセキュリティ層
- Enterprise:組織コードベースを使用した組織向けのパーソナライゼーション
-
Summary 1 min
- プラン: 個人向けの Free、Pro、組織向けの Business、企業向けの Enterprise。
- 機能:Copilot for chat、for pull requests
- アクセス:Copilot for CLI、Command palette
- IntelliSense:Inline suggestions、Multiple suggestions
- 対話:Inline chat、Copilot chat
- 生成:Comments to code、Explanations、Automated test generation
補足(モデルは選べるようになった): 「GPT-4 を使用」という記述は
当時の状況で、現在の GitHub Copilot は
チャットで使用するモデルをユーザーが選択できる
(GPT 系、Claude 系、Gemini 系など)。
試験対策としては「特定のモデル名を覚える」より
「モデルは差し替わる前提の製品である」と押さえるのが実際的である。
https://github.com/skills/copilot-codespaces-vscode?tab=readme-ov-file
-
Introduction 1 min
-
The Codespace lifecycle 6 min
-
Personalize your Codespace 4 min
-
Codespaces versus GitHub.dev editor 4 min
-
Exercise - Code with Codespaces and Visual Studio Code 5 min
https://github.com/skills/code-with-codespaces
-
Knowledge check 5 min
-
Summary 2 min
ライフサイクルがポイント- VM にリモート接続する方式でエディタ+デバッグ実行、
環境のカスタマイズが可能 - GitHub.com、Visual Studio Code、または GitHub CLI で作成&接続できる。
- GitHub.dev はエディタの機能のみ提供している。
- リポジトリまたはブランチごとにリソース上限があり達すると通知される。
- ネットワーク接続が切れると操作できなくなるが再接続すれば続行可能
- リポジトリは、Linux システム上の
/workspaceディレクトリにクローンされる。
- VM にリモート接続する方式でエディタ+デバッグ実行、
https://github.com/skills/code-with-codespaces
- Introduction 1 min
- Projects versus Projects Classic 5 min
- How to create a project 5 min
- How to organize your project 5 min
- How to organize and automate your project 8 min
- Insight and automation with projects 8 min
-
Knowledge check 3 min
- 変更すると自動的に保存されるプロジェクト記述子はプロジェクト名(?)
- Iteration field(反復フィールド)でアジャイルのイテレーションにグループ化
- Single select field(単一選択フィールド)で優先度のグループ化を行う
- GitHub Actions を使用せず簡単な Built-in automation(組み込みの自動化)でも
自動化可能
-
Summary 1 min
- GitHub Projects は Redmine 的な機能を持つ GitHub 上の一機能
-
Introduction 2 min
-
What is Markdown? 12 min
-
Exercise - Communicate using Markdown 48 min
https://github.com/skills/communicate-using-markdown
- Knowledge check 3 min
- Summary 1 min
https://github.com/skills/communicate-using-markdown
-
Introduction 1 min
-
Identify where you can help 5 min
-
Contribute to an open-source repository 8 min
-
Exercise - Create your first pull request 6 min
https://github.com/firstcontributions/first-contributions/blob/main/docs/translations/README.ja.md -
Next steps 2 min
-
Knowledge check 4 min
- GitHub リポジトリでプロジェクトを支援できる場所を見つけるのに
最適な場所は問題リスト - プルリクエストでヘルプやレビューを依頼する場合、
プルリクエストにコメントを追加する - リポジトリをフォークし、クローンし、変更をコミットし、
フォークにプッシュしプルリクエストを作成
- GitHub リポジトリでプロジェクトを支援できる場所を見つけるのに
-
Summary 1 min
- 貢献
- プルリクエスト
- GitHub Sponsors
https://github.com/firstcontributions/first-contributions/blob/main/docs/translations/README.ja.md
-
Introduction 2 min
-
How to manage a successful InnerSource program 8 min
-
Exercise - InnerSource fundamentals 36 min
https://githubtraining.github.io/innersource-theory/#/measuring_success
-
Knowledge check 3 min
- InnerSource プログラムは、アクセスが組織内のユーザーに
限定されている点を除いて、基本的に OpenSource プログラムと同じ。 - テンプレート機能は InnerSource でも OpenSource でも使えるが、
よりガバナンスを強め易い InnerSource でより機能し易い。
- InnerSource プログラムは、アクセスが組織内のユーザーに
-
Summary 1 min
https://githubtraining.github.io/innersource-theory/#/measuring_success
-
Introduction 2 min
-
How to maintain a secure GitHub repository 8 min
- 安全な開発戦略の重要性
(一般知識の問題でコードを正しく安全に作成する規則と規制に準拠) - あらゆる段階でのセキュリティ
(開発ライフサイクルのすべての段階にプラクティスを組み込む) - セキュリティタブの機能
(SECURITY.md、セキュリティアドバイザリ、Dependabot、コード スキャン) -
.gitignoreを使用して機密ファイルをリポジトリから除外する - リポジトリから機密データを削除する
(誤ってパスワードを含むコミットをプッシュした場合など) - ブランチ保護ルール
(1 つ以上のブランチに対して特定の(CI/CD 系の)ワークフローを適用) - CODEOWNERS ファイルを追加
(プル リクエストのマージにコード所有者のレビューが必要になる)
- 安全な開発戦略の重要性
-
Automated security 6 min
- セキュリティ上の脆弱性のある古い依存関係を検出して修正する
- リポジトリ依存関係グラフ
- Dependabot:アラート、依存関係の自動更新
- 自動コードスキャン、機密データスキャン
-
Exercise - Secure your repository's supply chain 15 min
https://github.com/skills/secure-repository-supply-chain
- Knowledge check 3 min
- Summary 1 min
https://github.com/skills/secure-repository-supply-chain
-
Introduction 1 min
-
What is GitHub administration? 6 min
-
チームレベルでの管理
- 新しいチームを作成
- 親チームを選択または変更
- チームを削除または名前を変更
- チームに組織メンバーを追加または削除
- チームのメンバーシップを IdP グループと同期
- チーム / リポジトリに外部の共同作業者を追加または削除
- チームのページでチームディスカッションを有効 / 無効化
- 組織内のチームの可視性を変更
- プルリクエストの自動コード レビュー割り当て
- リマインダーをスケジュール
- チームのプロフィール写真を設定
- チームレベルの管理のベストプラクティス
-
組織レベルでの管理
- ユーザーを組織に招待 / 削除
- チーム編成しメンバーにチームメンテナー権限を付与
- 組織のリポジトリに外部の共同作業者を追加または削除
- メンバーにリポジトリの権限レベルを付与
- 特定のリポジトリのデフォルト権限レベルを設定
- 組織のセキュリティを設定する。
- 請求を設定、請求マネージャーを割り当て。
- カスタム スクリプトを使用して、リポジトリ情報を抽出
- カスタム スクリプトを使用して、組織全体の変更を適用
- 推奨:ユーザーとリポジトリに対して 1 つの組織のみを設定
- 注意:会社内の特定の制約により複数の組織を作成する場合
・組織の複製、組織間の設定共有はできない(設定エラーの発生リスクが高い)
・アプリケーションを複数の組織にインストールする必要がある場合に
追加コストが発生する可能性
-
企業レベルでの管理
- SAML によるハイブリッド IdP 的な構築が可能
- 企業に組織を追加 / 削除
- 組織に課金を設定、課金マネージャーを割り当て。
- 企業内のすべての組織、リポジトリ、メンバーに適用されるポリシーを設定
- カスタム スクリプトを使用して、組織情報を抽出
- カスタム スクリプトを使用して、企業全体の変更を適用
-
-
How does GitHub authentication work? 6 min
-
How does GitHub organization and permissions work? 10 min
-
リポジトリ権限
- 読み取り
- トリアージ
- 書き込み
- 維持
- 管理者
-
チーム権限
- メンバー
- (チームの)メンテナー
-
組織の権限
以下のロールとデフォルトの権限を付与- 所有者
- メンバー
- モデレータ
- 請求マネージャー
- セキュリティ管理者
- 外部協力者
-
エンタープライズ権限
以下のロールとデフォルトのリポジトリ権限- 所有者
- メンバー
- 請求マネージャー
-
リポジトリのセキュリティと管理
- 保護ルールを作成する
- CODEOWNERS ファイルを追加する
- Insights を使用してトラフィックを表示
-
- Knowledge check 3 min
- Summary 1 min
-
Introduction 2 min
-
User identity and access management 4 min
-
SAML SSO による組織管理
(ADFS、Entra ID、Okta、OneLogin、PingOne、Shibboleth)
-
SAML SSO による組織管理
-
User authentication 10 min
- SAML SSO による認証
- 2FA、MFA(TOTP、SMS、FIDO)
-
User authorization 7 min
- SCIM 経由の SAML SSO による認証
(SCIM は ID プロビジョニング技術) - SAML SSO を使用した SSH と PAT
- SCIM 経由の SAML SSO による認証
-
Team synchronization 5 min
- Entra ID または Okta
- GitHub チームを IdP グループに接続
- 組織 / 企業アカウントでも利用可能
-
Knowledge check 3 min
- 認証プロトコルの基本的な知識を理解しておくこと
- チーム同期はすべてのユーザーのプロフィールを読む権限が必要
- SSWS はチーム情報にアクセスするための WebAPI のトークンらしい
-
Summary 2 min
補足(SSWS とは): 「らしい」と留保されているが、
SSWS は Okta の API トークンを表す認証スキーム名である
(Authorization: SSWS <token>の形で使う。
Okta 独自のもので、標準の Bearer とは別)。
GitHub の Team synchronization を Okta で構成する際、
Okta 側のグループ情報を読むために GitHub に登録する。
-
Introduction 2 min
-
What are pull requests? 8 min
-
Exercise - Reviewing pull requests 35 min
https://github.com/skills/review-pull-requests
- Knowledge check 3 min
- Summary 1 min
-
Introduction 2 min
-
How to search and organize repository history by using GitHub 8 min
-
グローバル検索(様々なエンティティが対象)
-
コンテキスト検索(問題やプルリクエストなどの特定のタブで利用)
-
検索フィルターの使用
クエリ 説明 is:open is:issue assignee:@me現在のユーザーに割り当てられている未解決の問題 is:closed is:pr author:contosoクローズされた @contoso に作成されたプルリクエスト is:pr sidebar in:commentsコメントで「サイドバー」と言及されているプルリクエスト is:open is:issue label:bug -linked:prプルリクエストにリンクされていない未解決バグ問題 -
git blame in GitHub
-
git blame:特定のファイルの各行が「いつ・誰によって」
変更されたのかを表示する Git コマンド - blame in GitHub:より堅牢なユーザー インターフェースで基本機能を拡張
-
-
issue、commit などの相互リンク、メンション
-
-
Exercise - Connect the dots in a GitHub repository 24 min
https://github.com/skills/connect-the-dots
- Knowledge check 3 min
- Summary 1 min
- Introduction 1 min
- What is GitHub Copilot? 2 min
- Exercise - Set up GitHub Copilot to work with Visual Studio Code 5 min
- Use GitHub Copilot with Python 3 min
- Exercise - Update a Python web API with GitHub Copilot 5 min
- GitHub Copilot Free アカウント
- GitHub Codespaces:
https://github.com/codespaces/new/MicrosoftDocs/mslearn-copilot-codespaces-python
- Knowledge check 5 min
- Summary 1 min
- 本 Wiki 内
Tags: .NET開発, 構成管理ツール, CI, BI/AI
このWikiは「Open棟梁Project」,「OSSコンソーシアム 開発基盤部会」によって運営されています。