Это репозиторий электронной книги по управлению памятью в платформе .NET. Сайт представляет собой статический ресурс, генерируемый из Markdown-файлов с помощью MkDocs и современной темы Material for MkDocs.
Проект полностью контейнеризирован, что позволяет запустить среду предварительного просмотра без установки Python или MkDocs в основную систему.
-
Запуск сервера:
docker-compose up -d
-
Предпросмотр: Откройте браузер и перейдите по адресу:
http://localhost:8000 -
Остановка сервера:
docker-compose down
В проекте реализован принцип SSoT (Single Source of Truth) — единственным источником истины является директория /docs. Всё, что находится вне этой папки (кроме конфигурационных файлов), не попадает на итоговый сайт.
/docs/chapters/— Исходные тексты глав в формате Markdown./docs/assets/— Глобальные ресурсы сайта:/javascripts/— Кастомные JS-скрипты./stylesheets/— Пользовательские CSS-стили./images/— Общие изображения (логотипы, иконки), используемые в разных разделах книги.
/docs/chapters/[глава]/img/— Локальные ресурсы конкретной главы (схемы, скриншоты).
-
Локальные изображения: Если картинка относится только к одной главе
$\rightarrow$ поместите её в папкуimgэтой главы. Путь в MD:. -
Глобальные изображения: Если ресурс используется в нескольких главах или на главной странице
$\rightarrow$ поместите его в/docs/assets/images/. Путь в MD:(в зависимости от вложенности).
- Генератор: MkDocs
- Тема: Material for MkDocs
- Язык: Python 3.x
- Среда исполнения: Docker / Docker Compose
-
Развертывание: GitHub Actions
$\rightarrow$ GitHub Pages
Проект использует полностью автоматизированный конвейер сборки и публикации:
- Триггер: Любой
pushв веткуmain. - Сборка: GitHub Actions поднимает окружение, устанавливает зависимости из
requirements.txtс использованием кэширования (pip cache) и собирает статический HTML. - Деплой: Скомпилированный сайт автоматически публикуется на GitHub Pages.
Конфигурация пайплайна: .github/workflows/deploy.yml
- Версии зависимостей: Все библиотеки в
requirements.txtзафиксированы по версиям (pinning). Не обновляйте их без предварительного тестирования локально через Docker. - Чистота репозитория: Никогда не коммитьте папку
/site/(она находится в.gitignore). Результат сборки генерируется только на стороне сервера GitHub Actions. - Ссылки: Используйте относительные пути для внутренних ссылок, чтобы сохранить переносимость контента.
👉 https://brown-aleks.github.io/prodotnetmemory.github.io/
Броун Александр: Хочу поблагодарить автора и всех тех кто приложил усилия к созданию этой книги. И очень жаль, что нету возможности приобрести оригинал этой книги на русском языке.
Публичное заявление:
- Я ни в коем случае не претендую на авторство публикуемого материала. Я всего лишь стараюсь перевести изложенный материал в этой книги, как можно более точно с технической точки зрения.
- Данный перевод существует с целью личного изучения, ознакомления, не для продажи и не для массового распространения.
- Если перевод вам понравился и у вас начался приступ щедрости, всегда буду рад вашим благотворительным пожертвованиям на https://boosty.to/brown-aleks/donate
- А так же пожертвования принимаются на https://www.donationalerts.com/r/brownaleks

