tgoop.com/paniccode/45
Last Update:
jj крута
Посидел я на jj
где-то месяц, и... это офигенно.
Сначала опишу мой основной юзкейс для VCS:
* Делать много изменений на основе базового коммита, свитчится между ними и сравнивать
* Делать "снепшоты" in-development версий - т.е. условная фича еще полностью не готова, но хочется какой-то стейт аля "оно хотя бы билдится" зафиксировать
* Делать "снепшоты" экспериментов - т.е. тут вообще любой стейт от "изменил константу в конфиге" до "переписал половину кода", на котором был запущен эксперимент, и хочется этот стейт сохранить на будущее
Т.е. у меня по большей части не обычный "гит воркфлоу", где делаешь фичу, мержишь, делаешь новую, а эдакий стейт "тещу 20 фичей какая заработает"
И jj для этого идеален
Почему:
* WORKING COPY IS A PART OF A COMMIT ХОСПАДЕ НИКАКИХ СТЕШЕЙ ВСЁ ВСЕГДА СОХРАНЕНО АААА
* Свитч между двумя версиями буквально jj new -r "version"
* Коммиты не привязаны к веткам, поэтому можно их откреплять и прикреплять к друг другу как тебе вздумается. Можно фикс из рандомного места засунуть в другое рандомное место
* Интеграция с гитом - это по сути deal breaker, т.к. переводить всех на jj нет ни желания, ни смысла
* Сделать снепшот это буквально jj duplicate
- ВСЕ (это отличается от коммита, т.к. working copy остается в том же стейте)
Я скажу сразу, изначально было тяжело и не так радостно:
* Спустя месяц все концепты действительно становятся логичными и простыми, но по началу твой git brain отказывается собирать их в общую картинку, и в моменте возникает ощущение что ты заменил гит на другой гит - делаешь рандомные команды и надеешься, что будет хорошо
* Интеграций почти ни с чем нет. Очень рад был, что working copy diff все еще работает в ide, т.е. ты хотя бы в своем редакторе можешь нормально дифф твоего текущего коммита посмотреть
* Интерфейс хоть и понятный, но все еще терминальный, и все еще новый. Надо было привыкать и чутка выучить новый для меня "язык" для запросов по ревизиям
* Туториалы есть, но местами разбирали вообще не мои юзкейсы. Некоторые вещи приходилось самому понимать методом научного тыка
* jj log
...
BY Panic! At the 0xC0D3
Share with your friend now:
tgoop.com/paniccode/45