Руководства, Инструкции, Бланки

полное руководство по работе с Github img-1

полное руководство по работе с Github

Рейтинг: 5.0/5.0 (1916 проголосовавших)

Категория: Руководства

Описание

Установка GIT и настройка GitHub: полное руководство (Windows, Linux) (: Система контроля версий GIT )

Здесь описывается практическая часть вопроса использования Git - его установка и регистрация на сервере GitHub.com.

GitHub.com - это сервис, предлагающий хранение вашего кода и данных с использованием системы контроля версий Git. GitHub предоставляет бесплатный тарифный план для хранения 300Мб данных в открытом виде. Это значит, что любой пользователь интернета может скачать себе ваши данные. На GitHub можно разместить и закрытые для других репозитарии, заплатив 7$ в месяц. На бесплатном аккаунте GitHub, по-умолчанию, никто не сможет изменить ваши данные (могут только читать). Но вы можете настоить, кто из пользователей системы GitHub, имеет право на запись.

В статье подробно рассказывается, как делать настройку Git в ОС Windows и в ОС Linux.

Установка Git под Linux

Пользователям Linux, думаю, нет смысла объяснять, как устанавливать Git - в каждой системе это делается по-разному. В системе Debian (которая стоит у меня), для установки Git, можно использовать команду:

apt-get install git

Установка Git под Windows

Идем на официальную страницу Git http://git-scm.com. кликаем на Download for Windows. В открывшемся окне кликаем на Full installer for official Git. Запускаем полученный exe-шник.

В процессе инсталляции будет задан такой вопрос:

Я рекомендую выбрать "Run Git from the Windows Command Prompt". Все остальные опции можно оставлять по-умолчанию. После установки Git нужно перегрузиться или завершить сеанс пользователя и снова войти, чтобы применились изменения в системной переменной PATH.

Далее нужно проверить, доступен ли Git для работы. В любом каталоге даем команду:

Если получаем информацию о версии, то Git установлен и работает. Если получаем информацию что программа git не найдена, разбираемся что сделали не так.

Перед тем, как регистрироваться на GitHub, следует вначале сгенерировать SSH-ключ шифрования. Этот ключ необходим, чтобы быстро устанавливать соединение с GitHub, не вводя пароля. Без такого ключа GitHub просто не будет работать.

В момент генерации ключа будет запрошен пароль. Это пароль доступа к закрытому ключу, который хранится только на вашей машине и нигде больше. Этот пароль задается для максимальной секьюрности, хотя можно обойтись и без него. Нужно знать, что задав пароль к закрытому ключу, нужно будет при каждом соединении с сервером GitHub вводить данный пароль. Таким образом, при задании пароля, всё удобство пользования ключами шифрования пропадает.

Пользователям MyTetra: интерфейс работы с командной строкой, который используется для вызова git при синхронизации, не может работать на ввод символов. Поэтому, если вы зададите пароль, синхронизация работать не будет.

Настройка SSH-ключей в Linux

В операционной системе Linux вначале нужно заглянуть в каталог

/.ssh. Если там есть файлы id_rsa и id_rsa.pub то это и есть SSH-ключи. Если такого каталога или таких файлов нет, то ключи нужно сгенерировать. Даем команду:

ssh-keygen -t rsa -C 'myemail@mail.ru'

Вместо myemail@mail.ru нужно указать свой email. В процессе генерации ключа у вас спросят куда положить файлы, в ответ просто нажимаем Enter. При запросе пароля просто нажимаем Enter. После генерации, в каталоге

/.ssh должны появиться файлы id_rsa и id_rsa.pub. они нам пригодятся в дальнейшем.

Настройка SSH-ключей в Windows

В операционной системе Windows генератор SSH-ключей включен в комплект поставки Git. Для генерации ключей необходимо запустить на выполнение файл C:\Program Files\Git\Git bash.vbs. Его можно запустить как обычный exe-шник. Откроется программа "Консоль git". В ней надо дать команду:

ssh-keygen -t rsa -C "myemail@mail.ru"

Будьте внимательны, в этой консоли подглючивает копи-паст, прощще ввести команду вручную. В качестве email указываем свой почтовый ящик. На запрос " Enter file in which to save the key " просто нажимаем Enter. При запросе пароля " Enter passphrase " и " Enter same passphrase again " просто нажимаем Enter. В процессе генерации ключей в консоли будет выдаваться примерно следующая информация:

Generating public/private rsa key pair.
Enter file in which to save the key (/c/Documents and Settings/username/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Documents and Settings/username/.ssh/id_rsa.
Your public key has been saved in /c/Documents and Settings/username/.ssh/id_rsa.pub.
The key fingerprint is:
51:db:73:e9:31:9f:51:a6:7a:c5:3d:da:9c:35:8f:95 myemail@mail.ru

После выполнения этой программы, в каталоге C:\Documents and Settings\username\.ssh будут лежать файлы id_rsa и id_rsa.pub. они нам пригодятся в дальнейшем.

Регистрация на GitHub.com

Теперь всё готово для регистрации. Переходим на стартовую страницу GitHub.com. Интерфейс немного замороченный, поэтому приведу пару скриншотов где что нажимать. Дизайн и верстку могут в любой момент сменить, так что описываю логику действий на данный момент.

В верхнем меню находим пункт "Pricing and Signup " и нажимаем на него:

Откроется страница выбора тарифного плана. Выбираем бесплатный аккаунт "Create a free account ":

Далее появится страница регистрации, на которой надо ввести имя пользователя, свой настоящий email и задать пароль. После регистрации сразу попадаем на личную страничку.

Установка SSH-ключа в GitHub

Сразу после регистрации необходимо прописать в системе GutHub свой публичный ключ шифрования (открытый SSH-ключ). Для добавления ключа, надо в правом верхнем углу нажать "Account Settings ":

В открывшемся окне нужно кликнуть на пункт меню "SSH Public Keys ", и нажать "Add Another Public Key ". Появится два поля - название ключа (Title ) и содержимое ключа (Key ).

В поле Title можно написать название компьютера, на котором сгенерирован публичный ключ. Можно писать по-русски.

В поле Key надо вставить содержимое файла id_rsa.pub. Помните, в каком каталоге они находятся? Переходим в этот каталог, открываем любым текстовым редактором файл id_rsa.pub (именно с расширением .pub. не перепутайте). Выделяем весь текст, копируем, и вставляем на странице GitHub в поле Key .

После добавления ключа, компьютер может соединяться с GitHub через программу git, и никаких ошибок не должно возникать.

Создание репозитария на GitHub

Теперь пришло время создать свой первый репозитарий на GitHub. Репозитарий можно рассматривать просто как директорию, в которой будут лежать синхронизируемые файлы и поддиректории. Создавать репозитарий нужно в web-интерфейсе GitHub, а наполнять его файлами и работать с ним можно будет уже с помощью программы git на своем компьютере.

Для создания репозитария, нужно в правом верхнем углу нажать "Dashboard ". В открывшемся окне вы увидите пункт "Create A Repository ":

Так вот, этот пункт нам не нужен! Данный пункт открывает не диалог создания репозитария, а страничку помощи. Вместо клика по этому пункту, ищем ниже на странице малоприметную ссылку "Create A Repository ". Она и откроет диалог добавления нового репозитария.

В диалоге добавления нового репозитарию нужно заполнить, как минимум, поле названия проекта "Project Name ". В названии проекта лучше не использовать кириллицу, так как имя проекта - это по факту имя директории. Для избежания проблем лучше, чтобы имя проекта содержало только латиницу. После нажатия кнопки "Create Repository ", репозитарий будет создан.

Рабочая ссылка на репозитарий в системе GitHub формируется так. Если вы зарегистрировались под именем username. и ваш репозитарий называется reponame. то для доступа к этому репозитарию можно использовать следующие ссылки:

В синтаксисе Git:


В синтаксисе Https:

Работа с репозитарием на GitHub через программу Git

Начиная с этого момента, пляски вокруг web-интерфейса GitHub можно считать законченными. Далее можно работать только используя программу git.

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

git config --global user.name "YourFullName"
git config --global user.email myemail@mail.ru

где вместо YourFullName нужно написать свое имя, а вместо myemail@mail.ru - свой email. Эти значения используются для логина на GitHub. Поэтому на месте YourFullName нужно указать ваш логин на GitHub-е, а на месте myemail@mail.ru нужно указать email, который вы вводили при генерации ключей шифрования.

После этих настроек, можно заливать свои файлы в репозитарий. Переходим в каталог со своим проектом, и даем команды:

git commit -a -m 'first commit'

git remote add origin git@github.com:username/reponame.git

git push -u origin master


После этих команд на сервере GitHub образуется копии файлов того каталога, в котором были выполнены данные команды. Далее можно уже делать коммиты, заливки на сервер GitHub изменений, считывания изменений с сервера. Но это уже совсем другая история.

Другие статьи

Моя шпаргалка по работе с Git

Некоторое время назад я открыл для себя Git. И знаете, я проникся. То есть, по-настоящему проникся. Теперь я использую Git не только на работе (где я с ним, собственно, познакомился), но и для своих проектиков, которые я стал хранить на BitBucket. Последний начал поддерживать Git относительно недавно. В отличие от GitHub BitBucket позволяет совершенно бесплатно создавать как открытые, так и закрытые репозитории.

В чем состоит отличие Git от Subversion?

Главное отличие Git от Subversion заключается в том, что Git — распределенная система контроля версий. Звучит ужасающе, но на практике это означает очень простую вещь. Каждый разработчик держит у себя на диске отдельный репозиторий. Обратите внимание — не копию репозитория, не некоторые бранчи. а тупо отдельный и при этом абсолютно полноценный репозиторий.

Пока мы работаем в рамках своего репозитория, все происходит в точности, как в Subversion. Мы коммитим и откатываем изменения, создаем, мерджим и удаляем бранчи, разрешаем конфликты и тд. Помимо этого, предусмотрены команды для работы с репозиториями на удаленных машинах. Например, «git push» означает мердж локальных изменений в удаленный репозиторий, а «git pull» — наоборот, мердж изменений из удаленного репозитория в локальный. Обмен данными по сети обычно происходит с использованием протокола SSH.

В результате имеем:

  • Git присущи все те же преимущества от использования VCS, что мы получаем в Subversion .
  • Git дает нам нормальное шифрование «из коробки», безо всяких танцев с бубнами, как в случае с Subversion.
  • Если сервер с «главным» репозиторием, куда пушат свои изменения все разработчики (хотя формально в Git нет никакого «главного» репозитория), вдруг прилег — ничего страшного. Делаем коммиты в локальный репозиторий и ждем, когда сервер вернется.
  • Даже если сервер доступен, все равно удобнее сделать пяток локальных коммитов, а затем отправить их на сервер одним пушем.
  • Сервер вообще не нужен. Вы можете использовать Git только локально. И не обязательно для работы с исходниками. Например, можно использовать Git для того, чтобы иметь возможность откатиться к предыдущим версиям файлов (каких-нибудь электронных таблиц) или вернуть случайно удаленные.
  • Git не раскидывает по каталогам служебную информацию (помните «.svn»?). вместо этого она хранится только в корне репозитория.
  • Git нынче очень моден (хотя это далеко не единственная распределенная система контроля версий, например, есть Mercurial и Darcs), в связи с чем растет число разработчиков, использующих его. Как следствие, используя Git, легче получить помощь на каком-нибудь форуме или собрать команду разработчиков, знакомых с этой VCS.
  • Существует множество полезных утилит для работы с Git — Qgit, gitk, gitweb и другие. «Из коробки» есть импорт и экспорт в/из Subversion/CVS.
  • Git поддерживают многие хостинги репозиториев (GitHub. BitBucket. SourceForge. Google Code. … ) — есть из чего выбрать.
  • Большой популярностью пользуется GitHub. Используя Git, вы увеличиваете вероятность того, что кто-то захочет безвозмездно написать патч для вашего OpenSource проекта.
Пример использования Git

Я использовал Git при написании программы из заметки Генерация почти осмысленных текстов на Haskell. сидя под своей любимой FreeBSD. Вот как примерно выглядела моя работа с Git.

В первую очередь необходимо поставить Git:

Затем создаем пару ssh ключей, если не создавали ее ранее :

Иногда требуется создать копию репозитория или перенести его с одной машины на другую. Это делается примерно так:

mkdir -p / tmp / git-copy
cd / tmp / git-copy
git clone --bare git @ example.com:afiskon / cpp-opengl-tutorial1.git
cd cpp-opengl-tutorial1.git
git push --mirror git @ example.com:afiskon / cpp-opengl-tutorial2.git

Следует отметить, что Git позволяет использовать короткую запись хэшей. Вместо «d8578edf8458ce06fbc5bb76a58c5ca4a58c5ca4» можно писать «d8578edf» или даже «d857».

Дополнение: Также в 6-м пункте Мини-заметок номер 9 приводится пример объединения коммитов с помощью git rebase. а в 10-м пункте Мини-заметок номер 11 вы найдете пример объединения двух репозиториев в один без потери истории.

Работа с сабмодулями

Более подробно сабмодули и зачем они нужны объясняется в заметке Простой кроссплатформенный OpenGL-проект на C++. Здесь упомянем самое главное.

git submodule add https: // github.com / glfw / glfw glfw

git submodule init

Обновление сабмодулей, например, если после git pull поменялся коммит, на который смотрит сабмодуль:

git submodule update

Удаление сабмодуля производится так:

  1. Скажите git rm --cached имя_сабмодуля ;
  2. Удалите соответствующие строчки из файла .gitmodules;
  3. Также грохните соответствующую секцию в .git/config;
  4. Сделайте коммит;
  5. Удалите файлы сабмодуля;
  6. Удалите каталог .git/modules/имя_сабмодуля;
Дополнительные материалы

В качестве источников дополнительной информации я бы рекомендовал следующие:

Как обычно, любые замечания, дополнения и вопросы категорически приветствуются. И кстати, с наступающим вас!

Подпишись через RSS. E-Mail. Google+. Facebook. Vk или Twitter !

Пошаговая инструкция по работе с git и github для студентов · andreiled

Пошаговая инструкция по работе с git и github для студентов

В первую очередь надо установить клиент git: обязательно потребуется консольный клиент, доступный по ссылке http://git-scm.com/downloads (поддерживаются основные ОС), графический клиент можно установить по желанию, исходя из своих предпочтений. На Unix системах можно воспользоваться менеджером пакетов (yum на fedora и подобных или apt-get на debian, ubuntu и подобных) вместо того, чтобы скачивать установщик с сайта.

Далее работа с git будет объясняться на примере работы с консольным клиентом по следующим причинам:

  • Чтобы у вас складывалось понимание происходящего и при возникновении проблем вы могли четко объяснить, что вы делали, и было видно, что пошло не так.
  • Все нажатия кнопок в графических клиентах в итоге сводят к выполнению определнных команд консольного клиента, в то же время возможности графических клиентов ограничены по сравнению с консольным
  • У тех, кто будет работать в классе на стоящих там компьютерах, не будет другого выбора, кроме как пользоваться консольным клиентом (на сколько мне известно, никаких графических клиентов для git там не установлено)

Аккаунт и репозитории на github.com

Затем надо зарегистрироваться на https://github.com/. После чего можно будет создавать свои репозитории или присоединиться к работе над проектами коллег, сделав fork другого репозитория. Вам предлагается начать с создания fork-а к заведенному мной репозиторию https://github.com/andreiled/mipt-cs-4sem. где я буду выкладывать примеры кода к занятиям и задания. О механизме обмена кодом между пользователями мы поговорим на следующем занятии.

Работа с кодом из репозитория на локальном компьютере

Создание локального репозитория, связанного с удаленным репозиторием

Следующим шагом после создания репозитория на github, называемого далее удаленным репозиторием, является создание локальной копии этого репозитория на своем компьютере. Особенностью git явялется наличие на локальном компьютере полной окпии репозитория со всей информацией об истории изменений.

  1. Открываем консольный клиент.
    • На Windows после установки клиента появляется пункт Git Bash в контекстом меню папки. Достаточно перейти в желаемую папку и воспользоваться этим пунктом меню.
    • На Unix системах достаточно открыть терминал и перейти в нужную директорию. При стандартной установке консольного клиента будет доступна команда git без дополнительных усилий.
  2. Выполняем команду git clone https://github.com/%user_login%/%repo_name%.git. Полную https ссылку на репозиторий для его выкачивания можно также найти на странице самого репозитория на github. После этого в текущей папке появится новая папка с именем %repo_name%. содержащая копию удаленного (remote) репозитория.
  3. Переходим в свежесозданную папку репозитория и настраиваем его:
    1. git config user.name ivan.ivanov
    2. git config user.email ivanov@example.com

Внесение и оформление изменений в локальном репозитории

  1. Воспользовавшись командой git status можно узнать, на какой ветке (branch) репозитория вы сейчас находитесь, какие изменения присутствуют в вашей рабочей копии и другую информацию.
    Рабочей копией называется совокупность файлов в локальной папке репозитория за исключением служебных файлов.
  2. После внесения каких-либо изменений в рабочую копию их можно закоммитить в локальный репозиторий:
    1. сначала нужная часть изменений подготавливается к коммиту с использованием команды git add %file_path%
    2. после чего производится коммит командой git commit
      Использование команды без аргументов откроет текстовый редактор, где надо будет написать комментарий для коммита, коммит обязательно должен иметь комментарий. Другим вариантом задания комментария к коммиту является использование команды git commit -m "%commit_message%"
  3. Историю изменений можно посмотреть командой git log или git log --name-only. Если вся история изменений не умещается на экране, то можно пользоваться клавишами прокрутки на клавиатуре ("стрелочки", PgUp, PgDown), выход из режима просмотра изменений осуществляется нажатием клавиши "q".

Загрузка локальных изменений в удаленный репозиторий

После того, как были выполнены нужные локальные коммиты, изменения можно загрузить в удаленный репозиторий с помощью команды git push origin master. GIT клиент при этом запросит имя пользователя и пароль для доступа к github.
Выполнение этой команды может закончиться с ошибкой, если в локально репозитории отсутствуют последние изменения, имеющиеся в удаленном репозитории. Для решения этой проблемы надо выполнить команду git pull. которая скачает последние изменения из удаленного репозитория и смержит их с вашими локальными правками, после чего можно повторить команду git push .

Как настроить подключение к удаленному Git репозиторию - Stack Overflow на русском

Как настроить подключение к удаленному Git-репозиторию, через SSH, на компьютере с Windows 7. И соответственно выкачать содержимое к себе на локальный сервер.

Удаленный репозиторий находится на сервере с git. мне нужно просто склонировать содержимое. никаких пушей обратно. там есть идентификация. сгенерил паблик кей и отослал спец-ту на той стороне. как мне добавить ранее сгенеренный-свой ключ через консоль и подключиться к серверу? какие команды. Windows 7 на моей машине.

задан 23 ноя '15 в 10:35

Клонирование через SSH

Пример команды для клонирования через SSH.

В общем случае команда для клонирования по SSH выглядит так:

Не перепутайте с HTTPS, который потребует авторизации через логин-пароль:

Создание ssh-ключа.

На Windows можно как через cmd, так и Git Bash, на *nix — просто в консоли. Но в cmd я не разбираюсь, поэтому привожу инструкцию только для Git Bash & *nix:

Можно выбрать passphrase, который повышает надёжность, но его нужно будет вводить каждый раз при использовании. Если забудете — ключ бесполезен для дальнейшего использования.

После выполнения команды публичный ключ появляется соответственно в

Именно публичный ключ нужно передавать специалисту на той стороне. (Наверняка вы так и сделали, но всё-таки стоит об этом сказать)

Если всё сделали правильно, то при попытке соединения по ssh ключ будет использоваться автоматически.

Если ключ уже есть

То его надо положить в c:\Users\%username%\.ssh. Если имя ключа отличается от id_rsa. то надо создать файл c:\Users\%username%\.ssh\config со следующим содержимым:

На практике мне когда-то помогла эта статья - лучший пример из всего что я видел: http://habrahabr.ru/sandbox/37865/

В ней полностью показаны клиентские программы для работы с push-ом и pull-ом. У меня лично Windows недолюбливал родной Git клиент, но всегда прекрасно работает с Tortoise (есть в статье).

В ней есть полное руководство по подключению. Не уверен правильная ли это аналогия, но вы можете поставить себе программу Composer и ей подобные, после чего можно через консоль Windows полностью клонировать себе репозиторий с Git-а.

Если же касается более специфичного подключения именно к Git, то эта страница будет полезной: http://webhamster.ru/site/page/index/articles/comp/171

Добавил, как попросили, кратко содержимое статьи:

Идем на официальную страницу Git http://git-scm.com. кликаем на Download for Windows. В открывшемся окне кликаем на Full installer for official Git. Запускаем полученный exe-шник.

Я рекомендую выбрать "Run Git from the Windows Command Prompt". Все остальные опции можно оставлять по-умолчанию. После установки Git нужно перегрузиться или завершить сеанс пользователя и снова войти, чтобы применились изменения в системной переменной PATH.

Далее нужно проверить, доступен ли Git для работы. В любом каталоге даем команду:

Если получаем информацию о версии, то Git установлен и работает. Если получаем информацию что программа git не найдена, разбираемся что сделали не так.

Настройка SSH-ключей в Windows

В операционной системе Windows генератор SSH-ключей включен в комплект поставки Git. Для генерации ключей необходимо запустить на выполнение файл C:\Program Files\Git\Git bash.vbs. Его можно запустить как обычный exe-шник. Откроется программа "Консоль git". В ней надо дать команду:

Будьте внимательны, в этой консоли подглючивает копи-паст, проще ввести команду вручную. В качестве email указываем свой почтовый ящик. На запрос "Enter file in which to save the key" просто нажимаем Enter. При запросе пароля "Enter passphrase" и "Enter same passphrase again" просто нажимаем Enter. В процессе генерации ключей в консоли будет выдаваться примерно следующая информация:

После выполнения этой программы, в каталоге C:\Documents and Settings\username.ssh будут лежать файлы id_rsa и id_rsa.pub, они нам пригодятся в дальнейшем.

Установка SSH-ключа в GitHub

Нас колько я помню, эта часть ответа несколько изменилась в современном дизайне GitHub-а, но интуитивно можо найти.

Сразу после регистрации необходимо прописать в системе GutHub свой публичный ключ шифрования (открытый SSH-ключ). Для добавления ключа, надо в правом верхнем углу нажать "Account Settings".

В открывшемся окне нужно кликнуть на пункт меню "SSH Public Keys", и нажать "Add Another Public Key". Появится два поля - название ключа (Title) и содержимое ключа (Key).

В поле Title можно написать название компьютера, на котором сгенерирован публичный ключ. Можно писать по-русски.

В поле Key надо вставить содержимое файла id_rsa.pub. Помните, в каком каталоге они находятся? Переходим в этот каталог, открываем любым текстовым редактором файл id_rsa.pub (именно с расширением .pub. не перепутайте). Выделяем весь текст, копируем, и вставляем на странице GitHub в поле Key.

После добавления ключа, компьютер может соединяться с GitHub через программу git, и никаких ошибок не должно возникать.

Работа с репозитарием на GitHub через программу Git

Начиная с этого момента, пляски вокруг web-интерфейса GitHub можно считать законченными. Далее можно работать только используя программу git.

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

где вместо YourFullName нужно написать свое имя, а вместо myemail@mail.ru - свой email. Эти значения используются для логина на GitHub. Поэтому на месте YourFullName нужно указать ваш логин на GitHub-е, а на месте myemail@mail.ru нужно указать email, который вы вводили при генерации ключей шифрования.

После этих настроек, можно заливать свои файлы в репозитарий. Переходим в каталог со своим проектом, и даем команды:

После этих команд на сервере GitHub образуется копии файлов того каталога, в котором были выполнены данные команды. Далее можно уже делать коммиты, заливки на сервер GitHub изменений, считывания изменений с сервера. Но это уже совсем другая история.

Вам выше уже предоставили ссылки на скачивание. Повторяться не буду.

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

Не забудьте настроить свой гит через:

Это особенно актуально для продукта атлассина crucible (для код ревью).

Примечание: опцию --global использовать, если вы единственный пользователь гита на данном компьютере. Если нет, настройте гит под конкретного пользователя в системе

Замечание про настройку пользователя скорее опционально.

Изучите официальную пользовательскую документацию на сайте либо, после установки клиента под windows запустите git --help для получения справки.

Для клонирования репозитория в свою локальную папку используется:

Вы также можете воспользоваться графической версией ГИТа, хотя лично я предпочитаю везде пользовать консоль, мне она кажется более информативной.

Git - Установка Git

1.5 Введение - Установка Git Установка Git

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

Note

В этой книге используется Git версии 2.0.0. Хотя большинство команд, рассматриваемых в книге, должны корректно работать и в более ранних версиях Git, некоторые из них могут действовать несколько по иному при использовании старых версий. Поскольку Git довольно хорош в вопросе сохранения обратной совместимости, примеры книги должны корректно работать в любой версии старше 2.0.

Если вы хотите установить Git под Linux как бинарный пакет, это можно сделать, используя обычный менеджер пакетов вашего дистрибутива. Если у вас Fedora, можно воспользоваться yum’ом:

Если же у вас дистрибутив, основанный на Debian, например, Ubuntu, попробуйте apt-get:

Чтобы воспользоваться дополнительными возможностями, посмотрите инструкцию по установке для нескольких различных разновидностей Unix на сайте Git’а http://git-scm.com/download/linux .

Существует несколько способов установки Git’а на Mac. Самый простой — установить Xcode Command Line Tools. В версии Mavericks (10.9) и выше вы можете добиться этого просто первый раз выполнив git в терминале. Если Git не установлен, вам будет предложено его установить.

Если Вы хотите получить более актуальную версию, то можете воспользоваться бинарным установщиком. Установщик Git для OS X доступен для скачивания с сайта Git’а http://git-scm.com/download/mac .

Вы также можете установить Git, при установке GitHub для Mac. Их графический интерфейс Git также имеет возможность установить и утилиты командной строки. Скачать клиент GitHub для Mac вы можете с сайта, в http://mac.github.com [].

Для установки Git в Windows также имеется несколько способов. Официальная сборка доступна для скачивания на официальном сайте Git’а. Просто перейдите на страницу http://git-scm.com/download/win . и загрузка запустится автоматически. Обратите внимание, что это проект, называемый Git для Windows (другое название msysGit), который отделен от самого Git; для получения дополнительной информации о нем, перейдите наhttp://msysgit.github.io/[].

Другой простой способ установки Git — установить GitHub для Windows. Его установщик включает в себя утилиты командной строки и GUI Git’а. Он также корректно работает с Powershell, обеспечивает четкое сохранение учетных данных и правильные настройки CRLF. Вы познакомитесь с этими вещами подробнее несколько позже, здесь же отметим, что они будут вам необходимы. Вы можете загрузить GitHub для Windows с сайта http://windows.github.com .

Многие предпочитают устанавливать Git из исходников, поскольку такой способ позволяет получить самую свежую версию. Обновление бинарных инсталяторов как правило немного отстает, хотя в последнее время разница не столь существенна.

Если вы действительно хотите установить Git из исходников, у вас должны быть установлены следующие библиотеки, от которых он зависит: curl, zlib, openssl, expat, and libiconv. Например, если в вашей системе используется yum (например, Fedora) или apt-get (например, системы, базирующиеся на Debian), вы можете использовать одну из следующих команд для установки всех зависимостей, используемых для сборки и установки бинарных файлов Git:

Для того, чтобы собрать документацию в различных форматах (doc, html, info), понадобятся следующие зависимости:

Если у вас есть все необходимые зависимости, вы можете пойти дальше и скачать самый свежий архив с исходниками из следующих мест. С сайта Kernel.org https://www.kernel.org/pub/software/scm/git . или зеркала на сайте GitHub https://github.com/git/git/releases . Конечно, немного проще, скачать последнюю версию с сайта GitHub, но на странице kernel.org релизы имеют подписи, если вы хотите проверить что скачиваете.

Затем, скомпилируйте и установите:

После этого, вы можете получить Git с помощью службы обновлений Git:

Знакомство с Git и Github для пользователей Linux

Знакомство с Git и Github для пользователей Linux

Оригинал: Beginning Git and Github for Linux Users
Автор: Carla Schroder
Дата публикации: 20 November 2014
Перевод: Н.Ромоданов
Дата перевода: декабрь 2014 г.

Распределенная система контроля версий Git является приятным следующим шагом после Subversion, CVS, Mercurial и всего другого, что мы уже попробовали и с чем работали. Она отлично подходит для распределенной разработки, когда у вас есть несколько помощников, работающих над одним проектом, и для безопасной проверки всех видов сумасшедших изменений. На практике мы собираемся использовать бесплатный аккаунтом GitHub с тем, чтобы сдвинуться в правильном направлении и начать что-то делать.

Рис.1: Github является отличным местом для изучения Git.

Концептуально Git отличается от других систем контроля версий. Старые системы контроля версий отслеживают изменения в файлах, что вы можете обнаружить, если покопаетесь в конфигурационных файлах таких систем. Подход Git больше похож на моментальные снимки файловой системы, когда каждое изменение (commit) или сохраненное состояние является полный снипке системы, а не файлом, в котором запомнены различия. Git эффективно использует дисковое пространство, т. к. в каждом снимке сохраняются только изменения и ссылки на неизмененные файлы. Все изменения сопровождаются контрольными суммами, так что вы можете быть уверены в целостности данных и всегда сможете отменить изменения.

Git работает быстро, поскольку ваша работа полностью делается на вашем локальном компьютере, а затем помещается в удаленное хранилище. Все, что делается, делается для вас абсолютно безопасно, поскольку ничего не влияет на удаленный репозитарий до тех пор, пока вы в него не поместите изменения. И даже после этого у вас есть еще одно средство, обеспечивающее отказоустойчивость: ветки (branches). Система веток в Git является изумительным решением. Создайте ветку из ветки master, выполните любые самые ужасные эксперименты, а затем уничтожьте эту ветку или поместите результат в основную ветвь. Либо, если над основной ветвью работает еще кто-нибудь, вы можете сделать запрос на просмотр, а затем после того, как просмотр будет завершен, может слить результат в ветвь master.

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

Практика на Github

Самый быстрый способ немного попрактиковаться в использовании Git — это открыть бесплатный аккаунт на GitHub. На рис.1 показан мой тестовый аккаунт GitHub, который называется playground. Новые аккаунты Github предоставляются с заранее приготовленным репозитарием, в котором есть файл README, лицензия, а также кнопки для быстрого создания отчётов об ошибках, запросов, описаний Wiki, а также другие полезные функции.

На бесплатных аккаунтах GitHub разрешает создавать только общедоступные репозитории. В них любой может просматривать и загружать ваши файлы. Однако никто не может делать изменения или коммиттить данные, если у посетителя нет учетной записи GitHub и вы утвердили его как участника проекта. Если вам нужен личный репозиторий, который будет скрыт от всех, то вам потребуется платный аккаунт. За семь долларов в месяц вы получите пять личных репозиториев и неограниченное количество общедоступных репозитариев с неограниченным количеством участников.

Github любезно предоставляет возможность скопировать адреса URL с тем, чтобы можно было клонировать репозитории. Т.е. вы можете создать на вашем компьютере каталог для вашего репозитория, а затем клонировать репозиторий в этот каталог:

Все файлы будут скопированы на компьютер, и вы сможете их читать, редактировать и удалять точно также, как и любые другие файлы. Давайте улучшим файл README.md и изучим все великолепные возможностей использование ветвей в Git.

Использование ветвей

Механизм ветвления в Git отлично подходит для безопасного создания и тестирования изменений. Вы можете создавать и уничтожать в них все, что вы хотите. Давайте создадим одну из ветвей для редактирования файла README.md:

Для того, чтобы увидеть, где вы находитесь, запустите команду git status:

Какие у вас созданы ветви?

Звездочка указывает, на какой ветви вы находитесь. Ветвь master является вашей основной ветвью, т. е. той, в которой вы никогда не будете делать каких-либо изменений до тех пор, пока они не будут опробованы в некоторой другой ветви. Теперь внесем несколько изменений в файл README.md, а затем снова проверим статус:

Разве это не приятно, что Git сообщает вам о том, что происходит, и дает советы. Чтобы отменить изменения, выполните следующую команду

Или вы можете удалить всю ветвь:

Либо вы можете сказать Git, что нужно отслеживать состояние файла:

На этом этапе Git отслеживает состояние файла README.md и это происходит во всех ветвях вашего проекта. Git предоставляет вам полезную возможность - если вы передумали и не хотите, чтобы Git отслеживал этот файл, то выполните команду git reset HEAD README.md. Это, а также все действия Git, запоминаются в каталоге .git в вашем репозитарии. Все хранится в простых текстовых файлах: файлы, контрольные суммы, а также то, что каждый пользователь что делал в удаленном или локальном репозитории.

Что делать, если вам нужно добавить несколько файлов? Вы можете указывать файлы по одному, например, git add file1 file2 file2, либо добавить все файлы с помощью команды git add *.

Когда есть удаленные файлы, вы можете использовать команду git rm filename, которая уберет их из Git, но не удалит их из вашей системы. Если у вас много удаленных файлов, то воспользуйтесь командой git add -u.

Коммитим файлы

Теперь давайте закоммитим (внесем в наш проект) наш измененный файл. Он будет добавлен в нашу ветвь и он больше не будет присутствовать в других ветвях:

Вам будет предложено добавить сообщение, относящееся к данному коммиту. Хорошим тоном считается писать ваши сообщения подробно и по-существу, но сейчас мы не будет слишком привередливы. Теперь ваш отредактированный файл был закомммитчен в ветви test. Он не был объединен с ветвью master и не был помещен в основную ветвь; он просто помещен в проект. Если вам нужно сделать что-то еще, то подходящий момент для того, чтобы остановиться.

А что, если нужно закоммитить несколько файлов? Вы можете закоммитить определенные файлы или все имеющиеся файлы:

Как вы узнаете, какие замоммитченные файлы еще не были перемещены в основную ветвь и до сих пор находятся в ветвях? Команда git status об этом вам не сообщит, поэтому используйте следующую команду:

В этом списке указаны все коммиты, не слитые с основной ветвью, и когда в нем ничего нет, то это значит, что все коммиты были перенесены в основную ветвь. Теперь давайте перенесем этот коммит в основную ветвь:

Для входа GitHub, возможно, будет предложено ввести ваши учетные данные. Git запоминает их в кэше на 15 минут, но вы можете изменить эту настройку. В приводимом ниже примере кэширование устанавливается на два часа:

Теперь перейдите в Github и посмотрите на вашу новую ветвь. Github выдает список всех ваших ветвей и вы можете просматривать файлы в различных ветвях (рис.2).

Рис.2: Ваш новый коммит и ветвь в Github

Теперь вы можете создать запрос на добавление изменений в основную ветвь, нажав для этого на кнопку Compare & Pull Request. У вас будет еще один шанс просмотреть свои изменения перед их слиянием с веткой master. Вы также можете создать такой запрос из командной строки компьютера, но это довольно трудоемкий процесс, и, к тому же в сети вы можете найти много инструментальных средств, которые облегчат этот процесс. Поэтому на данный момент, мы будем пользоваться замечательными кнопками GitHub.

Github позволяет вам просматривать файлы в формате обычного текста и поддерживает использование большого количества языков разметки, так что у вас есть возможность просматривать другие сгенерированные варианты просмотра файлов. В этот момент вы можете добавить в ветвь сразу много изменений. Вы также можете вносить изменения непосредственно на Github, но когда вы так поступаете, у вас возникнут конфликты между версией, находящейся в интернете, и локальной версией. Когда в ваших изменениях все вас будет устраивать, нажмите кнопку запроса слияние Merge. Вы должны нажать кнопку дважды. Для того, чтобы увидеть может ли слияние быть выполнено чисто, Github автоматически проверит ваш запрос на слияние, и если у вас возникнут конфликты, вам придется их исправить.

Еще одна приятная особенность Github состоит в том, когда у вас есть несколько ветвей, вы можете выбрать, какую из них использовать при слиянии; для этого нажмите кнопку Edit, расположенную справа от списка ветвей (рис.3).

Рис.3: Выбираем, какую ветвь использовать при слиянии

После того, как слияние будет выполнено, нажмите для поддержания общего порядка кнопку удаления ветви Delete Branch. После этого на вашем локальном компьютере сначала слейте ветвь с ветвью master, а затем вы можете удалить эту ветвь без всяких нареканий со стороны Git:

Вы можете принудительно удалить ветку, указав заглавную букву -D:

Отмена изменений

Опять же, проще всего использовать кнопки Github. Вам будет показан список всех изменений, и вы можете отменить любое из них, нажав на соответствующую кнопку. Вы даже можете восстановить удаленные филиалы.

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

Эта статья еще не оценивалась

Вы сможете оценить статью и оставить комментарий, если войдете или зарегистрируетесь .
Только зарегистрированные пользователи могут оценивать и комментировать статьи.

Комментарии отсутствуют