По мотивам «Коанов Вима».
Тишина
Что-то одно, но хорошо
Только богам
Хобгоблин
Длинное и короткое
Тишина
Python-программистка передала свой файл ~/.gitconfig
мастеру Гиту. Среди строчек кода было следующее:
[alias]
; Явное лучше подразумеваемового. Если мы хотим выполнить слияние,
; нам следует сделать это самим.
pull = pull --ff-only
Мастер Гит кивнул. «git pull origin master
», — сказала программистка.
Мастер Гит отправил последние новейшие изменения в master
и автоматически выполнил слияние с изменениями программистки.
«Но мастер Гит, разве я не сказала использовать fast-forward в моей конфигурации?» — вскричала она.
Мастер Гит посмотрел на неё, кивнул и ничего не сказал.
«Тогда почему же вы не предупредили меня о проблеме с моей конфигурацией?» — спросила она.
Мастер Гит ответил: «В ней не было проблем.»
Месяцы спустя, когда программистка по другой причине читала git --help config
, она достигла просветления.
Что-то одно, но хорошо
Unix-программистка работала на кубикловой ферме. Она увидела мастера Гита, идущего по тропе, и выбежала, чтобы встретить его.
«Для меня честь встретить вас, мастер Гит», — сказала она. «Я учила Unix-путь построения программ, согласно которому каждый должен делать что-то одно, но хорошо. Несомненно, я могу многому научиться у вас.»
«Несомненно», — ответил мастер Гит.
«Как я могу перейти к другой ветке?» — спросила программистка.
«Используй git checkout
.»
«Как мне создать ветку?»
«Используй git checkout
.»
«А как мне обновить содержимое единственного файла моей рабочей директории, вообще без использования веток?»
«Используй git checkout
.»
После третьего ответа программистку постигло просветление.
Только богам
Великий историк пытался распутать клубок сложностей неверного слияния, которое произошло много месяцев назад. Он совершил паломничество к мастеру Гиту, чтобы просить его помощи.
«Мастер Гит, — сказал историк, — какова природа истории?»
«История непреложна. Переписывать её позже значит вредить самой материи существа.»
Историк согласился, а затем спросил: «И поэтому перебазирование коммитов, которые были внесены, не одобряется?»
«Воистину», — ответил мастер Гит.
«Великолепно!» — воскликнул историк. «У меня есть историческая запись коммита слияния с двумя другими родителями. Как я могу выяснить, из какой из веток происходит каждый из родителей?»
«История мимолётна, — ответил мастер Гит, — знание, которого ты ищешь, доступно только богам.»
Историк опустил голову, и просветление поразило его.
Хобгоблин
Ученица следовала пути мастера Гита. К концу урока она посмотрела на свои заметки и спросила: «Мастер, у меня есть несколько вопросов. Могу я задать их?»
Мастер Гит кивнул.
«Как просмотреть список всех тэгов?»
«git tag
», — ответил мастер Гит.
«Как мне просмотреть список всех удаленных репозиториев?»
«git remote -v
», — ответил мастер Гит.
«Как мне просмотреть список всех веток?»
«git branch -a
», — ответил мастер Гит.
«А как я могу просмотреть текущую ветку?»
«git rev-parse --abbrev-ref HEAD
», — ответил мастер Гит.
«Как удалить удаленный репозиторий?»
«git remote rm
», — ответил мастер Гит.
«Как мне удалить ветку?»
«git branch -d
», — ответил мастер Гит.
Ученица задумалась на некоторое время, затем спросила: «Конечно, некоторые из этих команд могли бы быть более согласующимися, чтобы было проще использовать их в пылу кодинга?»
Мастер Гит щелкнул пальцами. В комнате появился хобгоблин и съел ученика заживо. В загробной жизни на неё снизошло просветление.
Длинное и короткое
Мастер Гит и ученица прогуливались по мосту.
Ученица, желая перенять безграничное знание мастера Гита, сказала: «git branch --help
.»
Мастер Гит присел и провел лекцию о семи формах git branch
и их многих опциях.
Они пошли дальше. Несколько минут спустя они встретились с опытным разработчиком, путешествующим в противоположном направлении. Он поприветствовал мастера Гита и сказал: «git branch -h
.» Мастер Гит немногословно проинформировал его о самых общих опциях git branch
. Разработчик поблагодарил его и продолжил свой путь.
«Мастер, — сказала ученица, — какова природа длинных и коротких команд? Я считала, они равнозначны, но когда разработчик использовал -h
, вы сказали что-то отличное от того, что было сказано при --help
.»
«Перспектива — это всё», — ответил мастер.
Ученица была озадачена. Она решила поэкспериментировать и сказала: «git -h branch
.»
Мастер Гит развернулся и спрыгнул с перил моста, к камням, к своей смерти вниз.
При виде этого на ученицу снизошло просветление.
Автор: FakeFactFelis