Переходите на Git GUI, узнавайте больше о Git и забудьте о случайных отправках в master
Если вы разработчик, то, должно быть, уже пользуетесь Git. Если нет, то, надеюсь, используете другой инструмент для контроля версий!
При работе с Git обычно пользуются CLI или GUI, в который заворачивается весь нужный функционал. Тут стоит добавить: пользоваться хорошим GUI в разы лучше.
Первый плюс GUI заключается в том, что вы получаете Graphical User Interface — настоящий графический интерфейс, созданный специально для вас. Разработчики написали GUI, чтобы облегчить жизнь других разработчиков. С этим не поспоришь. Как только вы приловчитесь работать с GUI, то сможете по-новому взглянуть на свою базу кода.
Поэтому мне бы хотелось познакомить вас с моим любимым Git GUI — GitKraken:
GitKraken SupportЕсли вы уже не первый день работаете с Git, то, надеюсь, этот GUI станет усладой для ваших глаз. С ним вы сможете просмотреть все коммиты из базы кода, удаленные ветки, слияния и теги.
И сделано это очень красиво. С таким представлением видны любые изменения, в т.ч. критические (например, в ветке master).
Возможность быстро увидеть все изменения в коде сильно повлияла на эффективность моей работы. Так сложилось, что в нашей компании все слияния с master выделялись в виде новой сборки. И вдруг мы перестали получать эти сборки. Вместо этого, тестировщик запостил изменения в публичном канале. Я смог перейти к последнему тегу с нашей рабочей сборкой, а затем очень быстро прошелся по всем коммитам — строчка за строчкой. Очень важно было найти критическое изменение. Я открыл pull request, быстро все исправил и заслужил свои пять минут славы. Но все это было заслугой GitKraken!
Кроме того, я не трачу время на написание названий веток и запоминание (или не запоминание!) Git-команд.
Еще один плюс GUI в том, что он более устойчив к ошибкам. Вам проще видеть, в какой ветке вы находитесь, и была ли она закоммичена. Тем самым снижается вероятность случайной отправки изменений в master! Я прекрасно знаю, как круто писать всякие команды в CLI. Но каждый раз при печати вы можете допустить ошибку или забыть, в какой ветке находитесь.
К слову о Git, когда вы в последний раз открывали документацию или изучали что-то новое? Я — почти никогда. Хотя до сих пор учусь… но делаю это с помощью GitKraken. Например, вот что появится, если кликнуть правой кнопкой по коммиту:
Знаете ли вы, что означает каждая из этих опций? А вы вообще в курсе, что Git все это умеет? Git — это крайне мощный инструмент с гигантской областью применения. Но при работе в CLI вы ограничиваетесь лишь парочкой нужных команд (commit, push, branch), забывая об остальных возможностях Git.
Быть может, тонкости Git вам не до конца понятны?
Чем отличаются эти четыре опции?В UI доступны разные способы для получения кода с удаленного репозитория. Вы можете запросто погуглить отдельные типы отправок изменений (pull). Я и сам не знал, что такие типы существуют! Если вам интересно, почитайте документацию.
Узнав, на что действительно способен Git, я научился переносить коммиты в другие ветки (cherry-pick), создавать ветки demo, проводить слияния веток и вообще работать без опасений все испортить.
Надеюсь, вам самим захотелось поработать с GUI. Если вы дочитали до этого места, то, скорее всего, уже готовы попробовать. Однако для большинства разработчиков момент еще не настал. Почему-то у таких людей существует некий блок, мешающий им перейти на Git GUI. Например, стереотипы о том, что это не «круто». Все мы хотим чувствовать себя этакими мега-крутыми хакерами. Ведь это — одна из причин, почему мы вообще связали свою жизнь с программированием.
Однако не стоит загонять себя в строгие рамки. В конце концов, вы же не будете писать все на древнем языке программирования только в силу привычки. Хорошие инженеры так не поступают!
Еще мне кажется, что люди смотрят на GUI свысока, видя в нем «танцы с бубном». Профи работают с CLI. Ну, профессионалы не допускают ошибок. И это, пожалуй, самый главный плюс GUI.
Рискну даже сказать, что освоить Git на приличном уровне — в разы важнее, чем выучить новый язык программирования. Все-таки управление исходным кодом — это навык, который используется во всей разработке, вне зависимости от языка.
Не поддавайтесь влиянию общественности и не загоняйте себя в рамки. Пользоваться GUI — это нормально. Пользоваться CLI — это тоже нормально. Просто признайте, что вам нравится CLI, потому что писать команды в разы веселее.
Перевод статьи Steven Popovich: Stop Using the Git CLI
Комментарии