diff --git a/git.md b/git.md index dbeaccb..5e85ae1 100644 --- a/git.md +++ b/git.md @@ -13,21 +13,21 @@ Это дополнительный функционал, который не требуется для работы с Git, но очень помогает в этом. При работе с Git очень удобно, когда можно сразу определить, находитесь вы в обычном каталоге или в репозитории Git. Кроме того, было бы хорошо понимать статус текущего репозитория. Для этого нужно установить специальную утилиту, которая будет показывать статус репозитория. Для установки утилиты надо скопировать её репозиторий в домашний каталог пользователя, под которым вы работаете: -```shell +```bash cd ~ git clone https://github.com/magicmonty/bash-git-prompt.git .bash-git-prompt --depth=1 ``` А затем добавить в конец файла .bashrc такие строки: -```shell +```bash GIT_PROMPT_ONLY_IN_REPO=1 source ~/.bash-git-prompt/gitprompt.sh ``` Для того, чтобы изменения применились, перезапустить bash: -```shell +```bash exec bash ``` @@ -41,20 +41,20 @@ Генерация нового SSH-ключа (используйте e-mail, который привязан к GitHub): -```shell +```bash ssh-keygen -t rsa -b 4096 -C "github_email@gmail.com" ``` На всех вопросах достаточно нажать Enter (более безопасно использовать ключ с passphrase, но можно и без, если нажать Enter при вопросе, тогда passphrase не будет запрашиваться у вас постоянно при операциях с репозиторием). Запуск SSH-агента (пропускаем на Windows): -```shell +```bash eval "$(ssh-agent -s)" ``` Добавить ключ в SSH-агент (пропускаем на Windows): -```shell +```bash ssh-add ~/.ssh/id_rsa ``` @@ -67,22 +67,22 @@ Для добавления ключа надо его скопировать. Например, таким образом можно отобразить ключ для копирования: -```shell +```bash cat ~/.ssh/id_rsa.pub ``` После копирования надо перейти на GitHub. Находясь на любой странице GitHub, в правом верхнем углу нажмите на картинку вашего профиля и в выпадающем списке выберите «Settings». В списке слева надо выбрать поле «SSH and GPG keys». После этого надо нажать «New SSH key» и в поле «Title» написать название ключа (например «Home»), а в поле «Key» вставить содержимое, которое было скопировано из файла ~/.ssh/id_rsa.pub Чтобы проверить, всё ли прошло успешно, попробуйте выполнить команду: -```shell +```bash ssh -T git@github.com ``` Вывод должен быть таким: -```shell +```bash $ ssh -T git@github.com - Hi username! You've successfully authenticated, but GitHub does not provide shell access. + Hi username! You've successfully authenticated, but GitHub does not provide bash access. ``` [вверх](#git) @@ -93,31 +93,31 @@ Клонируем удаленный репозиторий в локальную папку -```shell +```bash git clone ssh://git@github.com/pyneng/online-2-natasha-samoylenko.git ``` После внесения измений в локальные файлы проверяем состояние локального репозитория -```shell +```bash git status ``` Необходимо добавить файлы в отслеживаемые -```shell +```bash git add <имя файла> ``` Создадим коммит -```shell +```bash git commit -m "описание изменений" ``` Синхронизируем локальный и удаленный репозитории -```shell +```bash git push ``` @@ -129,13 +129,13 @@ 1. Клонировать репозиторий с указанием необходимого ключа -```shell +```bash git clone -c core.sshCommand="/usr/bin/ssh -i /home/da2001/.ssh/sape_a.dolgiy" ssh://git@gitlab.sapient.ru:7999/devops/salt.git ``` 2. Указать в настройках локального репозитория необходимый ключ -```shell +```bash git config --local core.sshCommand "/usr/bin/ssh -i /home/da2001/.ssh/sape_a.dolgiy" ``` @@ -147,7 +147,7 @@ git config --local core.sshCommand "/usr/bin/ssh -i /home/da2001/.ssh/sape_a.dol ### Полная последовательность для Rebase: -```shell +```bash # 1. Переключиться на основную ветку git switch master @@ -163,7 +163,7 @@ git rebase master При возникновении конфликтов -```shell +```bash # Во время rebase Git сообщит о конфликтах # 1. Редактируете файлы, устраняете конфликты # 2. Добавляете исправленные файлы: @@ -178,4 +178,4 @@ git rebase --abort [вверх](#git) -*** \ No newline at end of file +***