Настройка GIT
Last updated
Last updated
Все настройки необходимо выполняють через консоль
В качестве консоли рекомендуется использовать Git Bash Клик правой кнопкой мышки на рабочем столе или в папке -> Git Bash Here
Так как данная консоль поддерживает большинство команд из Linix систем и будет полезна в дальнейшей настройке.
В первую очередь необходимо настроить имя пользователя и контактный email. Без них GIT просто не даст делать коммиты (что это такое).
Имя пользователя и email необходимо ввести те же, какие указаны у вас в GitLab. Они будут отображаться в общей истории изменений кода проектов, чтобы было понятно кто внес те или иные изменения
В консоли поочередно вводим следующие команды:
Для того, чтобы при просмотре истории коммитов в консоли (git log
) корректно отображались русские символы, необходимо ввести следующую команду:
Консольный редактор используется GIT для ввода сообщений коммита, или при перебазировании коммитов. Иногда приходится пользоваться именно им, и по умолчанию в качестве редактора GIT запускает vim, который достаточно сложен для освоения. Есть более простой и удобный консольный редактор - nano, на него и поменяем.
Подробнее о том, как поменять стандартный текстовый редактор GIT, например, на Sublime Text
.
Для того, чтобы при клонировании репозитория с GitLab и отправки обратно в него внесенных изменений GIT не требовал от вас постоянно вводить логин и пароль пользователя гитлаба - можно сгенерировать SSH ключ и добавить его в настройки в GitLab.
Открываем Git Bash
консоль (в других консолях на Windows это не будет работать) и вводим команду, указанную ниже. Так как вы возможно будете работать с нескольких устройств (например рабочий и домашний компьютер) то к ключу было бы неплохо добавить комментарий, для какого устройства или пользователя предназначен этот ключ (например Личный ноутбук
).
После ввода команды в консоли отобразится примерно следующее:
Сейчас генератор ключа спрашивает, куда его сохранить. Мы оставляем путь по умолчанию (ничего не вводим) и нажимаем Enter
. Продолжаем нажимать Enter
до тех пор, пока генерация ключа не будет завершена и в консоли не отобразится похожая картинка:
В результате должны быть сгенерированы два ключа - приватный (id_rsa) и публичный (id_rsa.pub). Вам нужно скопировать публичный ключ и добавить его в настройки гитлаба. Для этого введите в консоль команду
Вы получите следующий ответ:
Это и есть ваш публичный SSH ключ. Копируем его и идем в настройки GitLab: Иконка пользователя в правом верхнем углу -> Settings -> SSH Keys (в левом меню)
. Вставляем наш ключ в соответствующее поле и нажимаем Add key
Готово. Теперь непонадобится каждый раз вводить свой логин и пароль при клонировании, обновлении или отправке данных в GitLab.
Необязательно, но можно настроить так, чтобы Git Bash консоль можно было вызвать в любое время, нажав сочетание клавиш Win + R
(выполнить), ввести в поле ввода bash
, нажать Enter
и она бы открылась.
Для этого, в любом удобном месте создайте простой текстовый файл (txt) и переименуйте его в bash.bat. Откройте его в любом текстовом редакторе и вставьте следующий код:
Сохраните файл, и скопируйте его в следующую папку: C:\Program Files\Git\cmd\
. Теперь bash
можно вызвать отовсюду.
Создадим глобальный gitignore файл, который будет запрещать git-у индексировать системные файлы и папки, чтобы они не засоряли кодовую базу проектов. К ним относятся системные файлы от Windows и Mac OS, а так же папки и файлы, которые нужны только для редакторов кода. Далее приведены команды для git bash
.
Перейдем в домашнюю папку пользователя - ~
. На Windows это будет C:\Users\Пользователь
Создадим файл и сразу откроем его на редактирование
В открывшийся редактор вставьте следующие строки
Нажмите Ctrl+X
(выйти из редактора). Он спросит: Save modified buffer?
, (сохранить ли изменения), вводим с клавиатуры Y
. Теперь редактор уточнит, какое имя задать файлу (File Name to Write: .gitignore.global
), так как имя файла мы уже задали - то просто нажимаем Enter
.
Осталось добавить данный файл в настройки для git
Обратите внимание, имя глобального gitignore файла не должно совпадать с .gitignore
, оно должно быть либо другим, либо содержать приписку (как в нашем случае, .gitignore.global
), иначе git его не увидит.