Используете ли вы Git в CLI или GUI? В начале своей карьеры я активно пользовался графическим интерфейсом и до сих пор выполняю некоторые быстрые операции с использованием VSCode, PhpStorm или Fork. В предыдущей компании я был вынужден использовать GitKraken, поскольку он помогал разработчикам не допускать ошибок Git. GitKraken — отличный продукт, и использование инструментов с графическим интерфейсом определенно помогло мне более комфортно использовать Git и изучить различные команды. Это действительно помогает вам визуализировать изменения, вносимые в ваш репозиторий.
Однако по мере того, как вы начнете продвигаться по карьерной лестнице, вы можете обнаружить, что все больше тяготеете к терминалу, чтобы быстро выполнить git pull
, git push
или git commit
. Или, может быть, вы уже являетесь опытным пользователем Git и выполняете всю свою работу в CLI.
Использование псевдонимов Git в CLI может сделать вашу работу еще более эффективной. Вот тут-то и появляется Oh My Zsh. Oh My Zsh — это платформа для управления вашей конфигурацией Zsh. Zsh — это оболочка, похожая на Bash, но с некоторыми приятными дополнительными функциями. Вы можете перемещаться по каталогам, не вводя cd. Он предлагает исправление орфографии, плагины, темы и т. д. Одна из моих любимых функций — поиск предыдущей команды. Я могу начать вводить команду, а затем нажать вверх, чтобы просмотреть предыдущие команды, которые я использовал, начиная с уже набранного текста. Если вы используете Mac, скорее всего, Zsh у вас уже установлен и работает по умолчанию. В противном случае вы можете обратиться к документации Oh My Zsh, чтобы установить его.
После запуска Zsh следующим шагом будет установка Oh My Zsh. Это можно сделать с помощью простой команды curl
или wget
:
sh -c “$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" sh -c "$(wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
После установки вам нужно будет отредактировать файл .zshrc
, найти массив plugins
и убедиться, что git
добавлен. Это должно выглядеть примерно так:
plugins=( git )
Как только это будет готово, создайте исходный файл .zshrc
или просто перезапустите терминал.
Теперь у нас есть масса псевдонимов для распространенных команд Git.
Вот некоторые из моих любимых:
Обязательства
gcmsg ‘Commit messsage’ # Equivalent to git commit -m ‘Commit message’
Изменить все файлы на предыдущую фиксацию
Иногда я добавляю коммит и понимаю, что забыл изменить файл, поэтому вношу изменение, а затем хочу внести изменения в предыдущий коммит.
gcan! # Equivalent to git commit — verbose — all — no-edit — amend
В разработке
При этом создается фиксация с сообщением --wip-- [skip ci]
со всеми вашими измененными в данный момент файлами.
gwip
Толкать и тянуть
gl # Equivalent to git pull gp # Equivalent to git push
Принудительная отправка Git с арендой
Всегда нужно быть осторожным, толкая ветку с силой. Один из лучших вариантов — принудительное использование аренды. Это означает, что принудительное нажатие не удастся, если кто-то еще добавил дополнительные коммиты в удаленную ветку.
ggfl # Equivalent to git push — force-with-lease
Филиалы
Псевдонимы для создания и извлечения ветвей — одни из самых часто используемых.
gcb my-new-branch # Equivalent to git checkout -b my-new-branch gco — # Equivalent to git checkout — which checks out the previous branch gcm # Equivalent to git checkout main
Перебазирование
Я обычно использую git rebase
довольно часто. Использование графического пользовательского интерфейса определенно помогло мне понять, что он делает. Я использую git rebase
для добавления своих коммитов в другую ветку. Я также использую git rebase -- interactive HEAD~3
для изменения порядка и изменения коммитов, в данном случае HEAD~3
относится к трем последним коммитам.
grb {branch} # Equivalent to git rebase {branch} grbi HEAD~3 # Equivalent to git rebase — interactive HEAD~3
Различия и журнал
gd # Equivalent to git diff
Журнал Git
Когда я хочу быстро увидеть однострочную версию всех предыдущих коммитов, я использую псевдоним glog
.
glog # Equivalent to git log — oneline — decorate — graph
Полный список псевдонимов, доступных в плагине, можно посмотреть нажмите здесь.
Если вы используете другую оболочку, например bash
или fsh
, могут быть доступны похожие плагины, но если нет, вы все равно можете легко создать свои собственные псевдонимы в своем файле конфигурации, например .bashrc
. Или, может быть, есть общие команды Git (или команды CLI в целом), которые вы используете достаточно часто, чтобы гарантировать псевдоним.
alias gc=’git commit -m’
Спасибо за прочтение! Я надеюсь, что это поможет вам улучшить свои навыки работы с Git CLI. Дайте мне знать, если вы используете какие-либо другие распространенные псевдонимы Git, взятые из плагина или созданные вами собственные псевдонимы.
Спасибо, что дочитали до конца. Пожалуйста, подумайте о том, чтобы подписаться на автора и эту публикацию. Посетите Stackademic, чтобы узнать больше о том, как мы демократизируем бесплатное образование в области программирования во всем мире.