Pro Git, второе издание
Добро пожаловать во второе издание книги Pro Git
Эта же книга онлайн: https://git-scm.com/book/ru/v2/
Так же как и первое, второе издание книги публикуется под открытой лицензией.
С момента публикации первого издания многое изменилось. Для начала, мы перешли с Markdown на AsciiDoc — вот краткий справочник по синтаксису AsciiDoc.
Ещё мы убрали переводы из подразделов английского языка в отдельные репозитории. Подробнее в пункте про переводы.
Участие
Чтобы исправить ошибку или добавить что-то новое в этот репозиторий, вам нужно открыть запрос на слияние (Pull Request) на GitHub.
Несмотря на то, что в английской версии просят воздержаться от стилистических изменений на больших участках текста, русский перевод профессиональные редакторы не просматривали, будем рады вашим правкам.
Как собрать книгу
Есть два способа собрать файл для электронной книги из этого кода.
Самый простой — поручить это нам. Робот реагирует на изменения в ветке master
репозитория и автоматически собирает книгу во всех форматах.
Текущую сборку можно найти на странице https://git-scm.com/book/ru/v2.
Другой способ получить книгу — собрать её самостоятельно с помощью Asciidoctor. Используя команды ниже, вы сможете получить книгу в форматах HTML, EPUB и PDF.
$ bundle config set --local path '.bundle/vendor' $ bundle install $ bundle exec rake book:build Downloading locale attributes file... -- Saved at attributes-ru.adoc Converting to HTML... -- HTML output at progit.html Converting to EPUB... -- EPUB output at progit.epub Converting to FB2... -- FB2 output at progit.fb2.zip Converting to Mobi (kf8)... -- Mobi output at progit.mobi Converting to PDF... -- PDF output at progit.pdf Validating generated files... -- Validate HTML file progit.html Running ["ScriptCheck", "LinkCheck", "ImageCheck", "HtmlCheck"] on progit.html on *.html... Checking 89 external links... Ran on 1 file. HTML-Proofer finished successfully. -- Validate EPUB output file progit.epub Validating using EPUB version 3.2 rules. No errors or warnings detected. Messages: 0 fatals / 0 errors / 0 warnings / 0 infos EPUBCheck completed
Здесь используются проекты asciidoctor
, asciidoctor-pdf
, asciidoctor-fb2
и asciidoctor-epub
.
По умолчанию, bundle install
устанавливает зависимости глобально в систему.
Чтобы этого избежать, в примере выше менеджер пакетов дополнительно конфигурируется перед установкой зависимостей с помощью следующей команды:
bundle config set --local path '.bundle/vendor'
Также существует возможность собрать книгу только в одном из поддерживаемых форматов.
Для генерации только HTML файла:
bundle exec rake book:build_html
Для генерации только EPUB-файла:
bundle exec rake book:build_epub
Для генерации только FB2 файла:
bundle exec rake book:build_fb2
Для генерации только PDF файла:
bundle exec rake book:build_pdf
Для генерации только MOBI файла:
bundle exec rake book:build_mobi
Для валидации сгенерированных файлов предусмотрены команды проверки.
Для проверки HTML файла:
bundle exec rake book:check_html
Для проверки EPUB-файла:
bundle exec rake book:check_epub
Обратите внимание, что для запуска проверки EPUB-файла требуется наличие установленного JRE.
Переводы
Переводы на другие языки горячо приветствуются, но обрабатываются несколько иначе, чем в первом издании. Мы храним каждый перевод в отдельном репозитории и автоматически собираем готовые файлы с помощью AsciiDoctor. Это было реально сложным в прошлом издании.
Раз каждый перевод хранится в своём репозитории, теперь мы можем выбрать своего координатора для каждого из них. Команда Pro Git просто добавит их к себе. Для автоматической сборки репозиторий должен находиться у команды Pro Git на GitHub.
Иллюстрации
Изображения к этой книге были созданы в Sketch 3, оригинальный файл в формате sketchbook доступен в английской версии книги.
Добавление иллюстрации:
-
Добавьте страницу в sketchbook; по-возможности старайтесь использовать встроенные символы.
-
Добавьте «slice» на свою страницу; назовите её так же, как PNG файл, относительно корневого раздела исходного кода книги.
-
Убедитесь, что в настройках экспорта выставлен трёхкратный размер.