Перейти к содержимому

Kirbon и Git

Kirbon в репозитории: чистые diff, pull и смена веток, Markdown, совместимый с GitHub.

Откройте репозиторий

Для Kirbon Git-репозиторий — просто папка: откройте ее через Файл ▸ Открыть папку…, и Markdown внутри станет деревом страниц. Kirbon не нужен установленный Git, а кнопок Git в этой версии нет — коммитьте, делайте pull, ветки и ревью в привычном инструменте.

Чистые diff

Kirbon устроен так, чтобы в коммите было только то, что вы изменили:

  • Открытие, чтение и смена режимов никогда не пишут в файл.
  • Правка переписывает только измененные блоки. Все остальное — отступы, маркеры списков, стиль выделения, окончания строк, отсутствие перевода строки в конце — записывается байт в байт.
  • Новые блоки следуют стилю файла: маркеры - или *, ограждения из обратных кавычек или тильд, LF или CRLF.
  • Правка таблицы переписывает только измененную ячейку, сохраняя выравнивание остальных.
  • Настройки вида — ширина таблиц, закрепленные столбцы, номера строк кода, свернутые ветки структуры — хранятся на вашем Mac, никогда не в файлах.

Pull, смена веток, merge

Когда Git меняет файлы под открытой документацией, Kirbon замечает это по содержимому:

  • дерево страниц обновляется — новые, перемещенные и удаленные страницы оказываются на своих местах;
  • открытая страница без ваших правок обновляется на месте с пометкой Обновлено с диска;
  • у открытой страницы, которую вы правите, автосохранение встает на паузу и появляется Сравнить версии… — подробнее в разделе Сохранение и изменения на диске.

Переименование и перемещение

Переименовывайте и перемещайте страницы в Kirbon, а не через git mv: Kirbon перепишет ссылки на страницу во всех остальных страницах, а также ее собственные относительные ссылки и пути к изображениям — одним шагом, который можно отменить. Git увидит переименование плюс правки ссылок — это легко проверить в pull request.

На GitHub выглядит так же

Kirbon пишет CommonMark с GitHub Flavored Markdown: таблицы, списки задач, зачеркивание и выноски как GitHub alerts (> [!NOTE]). Ссылки — относительные пути с .md, а якоря заголовков следуют правилам GitHub, поэтому ссылка вроде release-checklist.md#on-release-day работает и в Kirbon, и на GitHub.