GitとGitHubの最低限
ひとことで言うと
Gitは、ファイルに加えた変更を記録し、あとで特定のバージョンを呼び出せるようにするバージョン管理システムです。EmDashのソースコード、公式ドキュメント、テンプレートは、GitHub上のGitのリポジトリで公開されています。
最低限の用語
図のテキストを読む
flowchart LR
WD["作業フォルダー<br/>ファイルを編集する"] -- "git add" --> SA["ステージングエリア<br/>記録する変更を選ぶ"]
SA -- "git commit" --> RP["リポジトリ<br/>変更の歴史(コミット)"]
GH["GitHub上のリポジトリ"] -- "git clone" --> RP
GI[".gitignore<br/>記録しないファイルの指定"] -.-> WD
| 用語 | 1文の説明 |
|---|---|
| リポジトリ | Gitが変更の歴史を記録している場所です。 |
| コミット | ステージングエリアのスナップショットを記録することです。記録したコミットは、あとから取り消したり参照したりできます。 |
git clone |
既存のリポジトリのコピーを取得するコマンドです。すべてのファイルの歴史も手元にコピーされます。 |
.gitignore |
Gitで追跡させないファイルのパターンを並べたファイルです。 |
EmDashのサイトでGitが関わるところ
- テンプレートから作ったプロジェクトでは、
EMDASH_ENCRYPTION_KEYを書き込んだ.envがGitの管理対象から除外されています。公式ドキュメントは.envをコミットしないよう注意しています。 - EmDashのコンテンツ(エントリーやコンテンツモデル)は、リポジトリのファイルではなくデータベースに保存されます。公式の「なぜEmDashか」は、コンテンツをリポジトリに置き、書き手がGitの作業に慣れている場合は、ファイルで管理するAstroのコレクションを選ぶよう説明しています。
公式リポジトリの読み方
図のテキストを読む
flowchart TB
subgraph MAIN["github.com/emdash-cms/emdash"]
M1["docs/src/content/docs/<br/>公式ドキュメントのMDX"]
M2["packages/*/CHANGELOG.md<br/>パッケージごとの変更履歴"]
M3["skills/<br/>Agent Skills"]
M4["templates/<br/>テンプレートの元"]
end
subgraph TPL["github.com/emdash-cms/templates"]
T1["blog、starter、marketing、portfolio、blank<br/>(-cloudflare付きはCloudflare版)"]
end
M4 -- "自動で同期" --> TPL
- テンプレートのリポジトリ(emdash-cms/templates)は、本体のリポジトリ(emdash-cms/emdash)から自動で同期されています。テンプレートのリポジトリのREADMEは、問題の報告や変更の提案(Issue、Pull Request)を本体のリポジトリに出すよう案内しています。
- リリースごとの変更は、各パッケージの
CHANGELOG.mdと、GitHubのリリースページ(https://github.com/emdash-cms/emdash/releases)で確認できます。 - 本体のリポジトリを手元にコピーするコマンドは、公式の「コントリビューションガイド」に書かれています。
git clone https://github.com/emdash-cms/emdash.git
AIに聞いてみよう
根拠にした公式ページ
- Pro Git(日本語版)「バージョン管理に関して」:https://git-scm.com/book/ja/v2/使い始める-バージョン管理に関して
- Pro Git(日本語版)「Git リポジトリの取得」:https://git-scm.com/book/ja/v2/Git-の基本-Git-リポジトリの取得
- Pro Git(日本語版)「変更内容のリポジトリへの記録」:https://git-scm.com/book/ja/v2/Git-の基本-変更内容のリポジトリへの記録
- EmDash公式リポジトリ:https://github.com/emdash-cms/emdash
- EmDash公式テンプレートリポジトリ:https://github.com/emdash-cms/templates
- EmDash公式「はじめてのEmDashサイト作成」(本サイトの訳):https://docs.emdashcms.com/getting-started/
- EmDash公式「なぜEmDashか」(本サイトの訳):https://docs.emdashcms.com/why-emdash/
- EmDash公式「コントリビューションガイド」(本サイトの訳):https://docs.emdashcms.com/contributing/