Предыдущий ролик Следующий ролик  

Видео урок: Автозаполнение в Git

Git: обучение основам

В этом ролике я покажу вам, как настроить автозаполнение в Git. Это приятный бонус, это, конечно, не вещь первой необходимости, вы спокойно можете пропустить этот ролик, если хотите. Однако я считаю, что зачастую вы захотите его использовать, и есть смысл установить его в самом начале. Теперь, эти инструкции будут только для Mac и Unix, поскольку в Windows уже включено автозаполнение, и тогда вам ничего не надо делать. В общем, если вы работает под Windows, просто пропускайте данный ролик. Если вы работаете с Mac и Unix, следуйте за мной. Первое, что мы сделаем, это скачаем его с GitHub. Я плавно проведу вас по всем этапам и покажу, что нужно сделать.

Здесь я дам вам команды. Во-первых, нам нужно перейти в пользовательскую директорию, затем мы будем использовать инструмент Curl, который перейдет по ссылке на GitHub и скачает скрипт автозаполнения в нашу домашнюю директорию. Затем мы его переименуем. На самом деле, мы просто меняем имя, чтобы впереди него стояла точка, и таким образом он станет файлом с точкой, а не просто обычным файлом, а затем, последнее, что мы сделаем, добавим его в нашу пользовательскую конфигурацию, так что это либо .bash_ profile, либо файл bashrc. Теперь, если вы не знакомы с этими двумя файлами, и вы не знаете разницу между ними, лучше всего просто добавить их в ваш bash_profile.

Если вы знаете разницу, тогда добавьте его в один,который вам больше подходит, а иначе просто добавьте его к bash_profile и пусть он там и будет, и это самый простой путь. Итак, что мы вставим в этот .bash_profile? Итак, мы вставим кусочек кода, и, конечно, я сделаю это вместе с вами, и я хочу, чтобы вы поняли, как все это красиво делается. Мы собираемся вставить его, если файл .git-completion.bash существует, затем загрузить файл .git-completion.bash. Это то, что делает данный код. Существует немного кода для шелл-скриптов, который делает это.

Если файл существует, тогда он загружается. давайте посмотрим, как это сделать. Вот я в командной строке. Как я говорил, нужно убедиться, что мы находимся в нашей пользовательской директории, и так должно быть по умолчанию, когда мы впервые открываем окно. А затем мы используем curl с -OL, это не ноль, это O, за которым следует L, и я просто вставлю URL, и мне не нужно все полностью набирать, пока вы смотрите, эта ссылка https://github.com/git/git/raw/ master/contrib/completion/git-completion.bash очень длинная.

Не спешите и возьмите паузу, если нужно, чтобы убедиться, что вы ее скопировали, и как только вы это сделали, нажмите ввод, и для вас будет скачан файл. Теперь мы можем видеть этот файл при помощи ls -la, и он находится на своем месте, git-completion.bash. Следующий шаг заключается в превращении его в файл с точкой. Так что мы просто скажем переместить этот файл, и я вставлю в начале тильду, чтобы убедиться, что мы нацелены на правильный файл, я могу нажать Tab. Если вы начнете набирать имя файла, нажмите Tab, и произойдет автозаполнение, и это в точносто то, что мы пытались сделать внутри Git. Мы пытаемся добавить именно этот вид автозаполнения в Git.

И затем нам надо снова это набрать, но в этот раз нам действительно нужно набирать, мы не можем использовать автозаполнение, поэтому auto-completion.bash, убедитесь, что все произнесено правильно, а теперь я собираюсь в этом убедиться и вставить ~/ в начале. Вот и все. Теперь если мы снова наберем ls -la и посмотрим на список, вы видите, что здесь перечислены все файлы с точкой, и новый был переименован, и теперь впереди стоит точка. Далее, мы хотим отредактировать этот bash_profile. Снова, если у вас есть файл bashrc, вы можете отредактировать его вместо этого, но я собираюсь отредактировать .bash_profile.

И вот способ, которым я хочу сделать это, я собираюсь это сделать при помощи текстового редактора nano, вы также можете сделать это при помощи TextMate, если он у вас установлен. Но я покажу вам это с nano, потому что у каждого должен быть установлен nano, .bash_profile. Вот он. Вы видите, что у меня уже есть несколько вещей для моих настроек. У вас может быть что-то другое или вообще ничего. И теперь мы вставим сюда немного кода шелл-скрипта. И снова, я скопирую его и вставлю, а не буду все набирать, мы просто изменим здесь отступы, он запускается.

Итак, if, а затем в квадратных скобках пробел, -f, а затем в моей пользовательской директории поиск файла git-completion, закрытие квадратной скобки, точка с запятой, затем говорится, может ли быть найден файл, затем он загружается. Вот что делает этот исходник, он говорит прочесть файл, загрузить все, что в нем, запустить его как скрипт. Вот что делает этот исходник, и последняя строка - это fi. Она закрывает здесь выражение if, это не опечатка, это fi, и мы знаем, что мы закончили, и все от if до fi находится в скрипте.

Я знаю, что это странный способ, но так работает шелл-скриптинг. А когда мы закончим, вы увидите, что внизу будет сказано Exit и команда, это Ctrl+X, итак Ctrl+X - это выйти, сохранить, а если набрать Y, будет сказано, куда вы хотите записать, просто нажмите ввод, потому что у него здесь старое имя. А если мы закроем это окно и потом откроем заново, все будет загружено в git-completion код. Мы позже это увидим, мы позже с этим поработаем, но если вы сделаете эти шаги, все будет установлено.

Это хорошо, потому что мы можем, например, набрать git, а затем мы можем начать набирать слово, например, с H, нажать Tab, и это слово будет для нас вставлено. Все сработает также для команд и бранчей и всего прочего, с чем мы будем работать в Git. Для них будет применяться автозаполнение в командной строке, и это позволит нам делать все быстрее. В следующем ролике мы посмотрим, что делает команда git help.