icon Посты по тегу git

git. Настройка git

Установка git

sudo apt-get install git

Начало работы с git

Сперва нужно настроить git, установив user.name и user.email. Приятно знать, от кого коммит. Таким образом команда git blame и ваша IDE будут подсказывать имя того, кто закоммитил ту или иную строчку.

git config --global --add user.name 'Name Surname'
git config --global --add user.email 'your@mail.here'

Эти команды автоматически внесут правки в конфигурационный файл git: ~/.gitconfig. Также файл ~/.gitconfig можно редактировать и вручную vim ~/.gitconfig

git current branch

Для удобной работы с бренчами нужно поставить пакет bash-completion (под маком установить git с вариантом +bash_completion) и добавить такую инструкцию в ~/.bash_profile (или ~/.bashrc):

PS1='\h:\W$(__git_ps1 " (%s)") \u\$ '

Теперь имя текущего бренча будет отображаться слева от строки ввода в консоли и будет всегда на виду.

Полезные git aliases

В svn я привык к кратким командам svn st, svn co. В git же по умолчанию нужно писать имя команды полностью. Но, всегда можно добавить алиасы на команды git и писать как вам хочется, примеры git alias:

git config --global alias.st status
git config --global alias.co checkout
git config --global alias.ci commit
git config --global alias.di diff

 

Доступ к bitbucket и github по ssh ключам

Если попытка склонировать любой приватный репозиторий с bitbucket или github по ssh вызывает ошибку вида:

Permission denied (publickey).
fatal: The remote end hung up unexpectedly

То это значит, что вы не прошли авторизацию по ssh-ключам. Тут 2 варианта:

  1. Клонировать через https схему, при этом будет запрошен имя пользователя и пароль от аккаунта. Но при любом fetch придётся вводить пароль снова.
  2. Настроить ssh-ключи, чтобы аутентификация проходила автоматически без ввода паролей и т.д.

 

Отправить Pull Request в чужой репозиторий на github

Pull Request (PR) — это запрос на включение сделанных вами изменений. Официальная GitHub дока по Pull Requests.

Как известно, мы можем свободно скачивать/клонировать любые публичные репозитории любого автора на github. После того, как я склонирую себе какой-либо репозиторий, я могу вносить в него любые изменения. Изменять файлы прямо в master`е в моей копии репозитория или оформлять изменения через Pull Requests, при этом я сам же эти изменения и приму в свою копию репозитория.

Но, как сделать, чтобы автор оригинального репозитория смог увидеть мои изменения и принять их (вмерджить) в свой оригинальный репозиторий?

Читать далее

Сказать git какой из ssh-ключей использовать

В случае если в папке ~/.ssh лежит более одной пары ключей, может понадобиться использовать тот или иной ключ в зависимости от того, к какому ресурсу мы хотим конектиться.

НОВЫЕ ПОЛЬЗОВАТЕЛИ