Клиенты Git разочаровывают

(Да, это относится и к CLI, и к графическим интерфейсам)

Что ж, я просто пробегусь по вариантам.

  • Официальный CLI: Довольно неинтуитивный. Кроме того, он не очень-то учит вас тому, как на самом деле работает Git, обычно вам приходится искать это самостоятельно. Стандартный рабочий процесс новичка с git add . — это анти-паттерн, которому вам придется переучивать людей. (Это приводит к тому, что люди не смотрят на то, что они фиксируют, прежде чем зафиксировать и отправить).

  • Альтернативные Git CLI: Они доказывают мою точку зрения. Официальный CLI — это не то, что я бы рекомендовал. Однако у меня нет достаточного опыта работы с альтернативными CLI, поэтому у меня нет конкретной рекомендации.

  • gitoxide заслуживает упоминания на данном этапе, несмотря на то, что он находится в стадии разработки. Это одна из самых интересных программ для переписывания Git’ов.

А теперь время для графических интерфейсов.

Одним из основных требований является то, что по умолчанию они должны использовать представление в виде графа. Такой, который позволяет вам видеть коммиты и ветви, существующие в данный момент.

В основном все остальное громоздко для больших проектов, и в итоге не так хорошо отображает рабочий процесс Git’а по принципу «сделай много веток».

  • Официальный графический интерфейс Git: Технически функционален, но каким-то образом умудряется быть хуже или, скорее, менее популярным, чем CLI.

  • Рабочий стол GitHub: Не соответствует этому требованию, см. этот закрытый вопрос

  • GitUI: Прекрасный пользовательский интерфейс терминала, не соответствует требованию

  • Lazygit: Прекрасный пользовательский интерфейс терминала, не соответствует требованиям

  • VSCode: Не соответствует требованиям, хотя есть расширение, которое я еще не опробовал.

  • Intellij: Ура, приличный Git-клиент. Основная проблема на данный момент в том, что они используют разные термины для многих общих операций, что заставляет вас задаваться вопросом «что это значит», и как только вы это поймете, поздравляю вас с успешным обучением тому, что использует один производитель. (aka vendor lock-in)

  • Git Fork: Очень красиво. Одна загвоздка в том, что из-за названия очень сложно найти хоть что-то, если у вас возник вопрос. Серьезно, попробуйте поискать «git fork three way merge».

  • GitKraken: Это то, что я использую в данный момент. Проблемы включают время запуска, цену (модель подписки), тот факт, что он медленный при одновременном удалении тысяч измененных файлов, …

  • Большинство сторонних графических интерфейсов (спасибо Git’у за прекрасный список) либо весьма ограничены, либо заброшены, либо неинтересны в использовании, либо являются дорогими платными программами, либо работают только на одной операционной системе, либо имеют некоторую комбинацию факторов, которые делают их непригодными. Я знаю, я проверил большинство из них. Если есть такая программа, которая, по вашему мнению, заслуживает упоминания, присылайте ее мне!

Итак, поехали. Думаю, я успешно пожаловался на все варианты на рынке.

Оцените статью
devanswers.ru
Добавить комментарий