Git сложен. Когда вы работаете в команде, управление неожиданными ошибками
git
может стать проблемой, и вы не хотите тратить время разработки на исправление
git
проблемы, когда вы могли бы кодировать. Клиент с графическим интерфейсом
git может исправить эти проблемы.
Командная строка не всегда лучше
Во-первых, мы определенно не говорим, что вам не следует учиться использовать
git из командной строки. Важно, чтобы вы могли выполнять основные задачи git (выборка, клонирование, фиксация), даже если у вас нет доступа к графическому интерфейсу.
Но для более сложных задач, таких как перебазирование, управление ветками и слияние, командная строка
git может усложниться, особенно при неожиданных ошибках. Если вы когда-либо скрывали свои изменения и выполняли полную перезагрузку HEAD ветки, чтобы попытаться исправить проблемы при отправке или извлечении, вы можете попробовать использовать графический интерфейс.
В любом случае вы, скорее всего, исправите эти проблемы на своем локальном компьютере, где вы не привязаны к терминалу. Вместо того, чтобы вводить команды для выполнения всего, основные действия доступны в виде кнопок. Это не волшебство, вам все равно нужно знать, как работает
git, чтобы его использовать. Исправление конфликтов слияния по-прежнему будет проблематичным, хотя графический интерфейс может облегчить понимание.
Тем не менее, взгляните на это сравнение клиента Fork
git
и командной строки
git. Какой из них вызывает меньше головной боли?
Ответ явно заключается в графическом интерфейсе, факт, с которым не согласятся только самые заядлые сторонники терминала. Обратите внимание, что нам пришлось выполнить поиск в StackOverflow и выполнить громоздкую команду «
git log --graph --pretty=oneline --abbrev-commit», чтобы терминал выглядел так же красиво.
Кроме того, если вы работаете в команде людей, вы обязательно столкнетесь с несколькими людьми, которые не очень хорошо разбираются в
git
Адаптация полного новичка будет будет намного проще, когда им дадут графический интерфейс, обучая внутренней работе
git, вместо того, чтобы сталкиваться с головной болью изучения терминала наряду со всем остальным. Опять же, вы все равно должны научить их использовать основные команды терминала, но вы столкнетесь с меньшим количеством конфликтов, если они будут использовать графический интерфейс в качестве ежедневного драйвера.
Какой клиент Git следует использовать?
Существует множество клиентов
git - их слишком много, чтобы подробно рассказывать здесь, и многие из них, вероятно, не стоят вашего внимания. Вместо этого мы покажем скриншоты нескольких удачных снимков, а вы сами сможете выбрать, какой из них привлекает ваше внимание.
Вилка - наша рекомендация. Он бесплатный и имеет версии для macOS и Windows (хотя поддержки Linux пока нет). Главное окно чистое, с отдельными вкладками для каждого репозитория и разноцветным графиком всех слияний и коммитов в каждом.
Он также имеет отличный интерфейс для разрешения конфликтов слияния (либо в Fork, либо во внешнем инструменте), а также интерактивную функцию перебазирования, которая позволяет вам переупорядочивать или сжимать коммиты при перебазировании веток:
И, если ничего не помогает, у него есть специальная кнопка для открытия текущего репо в терминале по умолчанию.
Еще один вариант - Sourcetree, созданный Atlassian. Это бесплатный полнофункциональный
git клиент с некоторыми дополнительными интеграциями для BitBucket, конкурента Atlassian Github. Он имеет тот же графический интерфейс для просмотра истории коммитов, а также вкладку для просмотра различных веток.
У него есть кнопки для открытия репозитория в Finder/Explorer, а также терминал по умолчанию. У него также есть сборки для macOS и Windows, хотя Linux не поддерживается.
Следующим идет Github Desktop. Он, конечно, не такой многофункциональный, как некоторые другие клиенты, но, похоже, он разработан для конкретного варианта использования: работа над проектами с открытым исходным кодом. Переключать репозитории легко, как и переключать ветки внутри репозиториев. История коммитов отображается в виде упорядоченного списка, при этом главное окно представляет собой разное представление изменений каждого коммита.
Возможно, вы потратите много времени на создание запросов на извлечение при работе над проектами с открытым исходным кодом. Приложение делает это простым нажатием Command + R, чтобы создать новый запрос на вытягивание для вашего коммита или открыть соответствующий запрос на вытягивание на самом Github.
Github Desktop имеет выпуски для macOS и Windows, но нет официального выпуска для Linux. Однако он основан на Electron, поэтому доступен сторонний порт Linux.
Наконец, у нас есть GitKraken, премиум-клиент
git с полной поддержкой macOS, Windows и Linux. Это стоит 49 долларов в год на человека для командной версии, хотя есть бесплатная версия для индивидуального использования с общедоступными репозиториями Github.
Это, безусловно, премиум; пользовательский интерфейс прекрасно продуман и даже показывает крошечные изображения профиля в виде графика.
У него есть интеграции с GitHub и Gitlab (включая собственный Gitlab), а также собственная служба отслеживания проблем, которая называется Glo Boards. Похоже, это просто Trello, но он включен в лицензию GitKraken, так что приятно иметь тот же интерфейс.
Интеграция Github включает в себя возможность обновлять и синхронизировать проблемы и этапы Github из самого приложения, а также автоматизировать действия Glo Board в ответ на обновления статуса запросов на вытягивание.
Кажется, это стоит своих денег, поэтому, если вы много работаете в Git и хотите получить премиум-клиент, вам следует попробовать их бесплатную версию. У них также есть 7-дневная бесплатная пробная версия версии Pro, если вы хотите протестировать ее с помощью частных репозиториев.