GIT
January 16, 2017 · View on GitHub
(конспект честно скопирован отсюда)
Что такое GIT?
Git это
- система контроля версий
- свободное программное обеспечение
- хранилище кода (это в первую очередь, но вообще-то любых файлов)
Есть и другие подобные системы, например, Mercurial или SVN. Но мы пользуемся Git, потому что это один из самых популярных в IT-сообществе. А раз популярный, то для него сделано много полезного разными людьми. Например, благодаря одному из таких инструментов можно делать мультики из истории изменений:
Зачем нам это нужно?
Нужно для того чтобы
- Иметь доступ к истории разработки (кто, когда, что написал)
если еще вчера ваша программа работала верно, а сегодня все сломалось, то достаточно взглянуть, какие изменения вы внесли в код за прошедшую ночь :) и (возможно) все откатить - Распределять права доступа к совместному коду (кому можно его редактировать, а кому - только смотреть)
- Параллельно разрабатывать несколько версий программы
- Разрабатывать в команде: чтобы у всех участников проекта на компьютере оказывался один и тот же код
Видео Зачем программисту профиль на GitHub?
Как работает git?
Вы скачиваете на компьютер специальную программу git-клиент и говорите ей, в какой директории (~папке на компьютере) нужно отслеживать изменения. Это ваш локальный репозиторий.
Еще вы можете сохранить ваши файлы в удаленном репозитории - на каком-то веб-сервисе в Интернете. Теперь вы можете хранить ваш код где-то в облаке, иметь к нему доступ отовсюду, синхронизировать ваш код на компьютере и удаленный репозиторий и делиться кодом с друзьями =)
Когда вы вносите изменения, вы отправляете их на удаленный репозиторий. А когда ваши друзья-разработчики хотят что-то добавить, они сначала скачивают ваши изменения, затем вносят свои и тоже отправляют их в удаленный репозиторий.
Как этим пользоваться?
Шаг 1
Сначала нужно зарегистрироваться на GitHub. GitHub - это такой сервис в интернете для хостинга репозиториев. Бывают и другие. Но GitHub самый авторитетный, густонаселённый и удобный (хотя бы куча всяких статистик, по которым видно, когда и во сколько студенты занимаются своими курсовыми :) но это не все плюсы гитхаба). А ещё бесплатный для тех репозиториев, которые вы готовы показать миру.
Шаг 2
Теперь нужно скачать программу git-клиент.
Вы можете скачать программу с графическим интерфейсом (с окошками и кнопками), например, SmartGit или выбрать что-то вот здесь. Такой программой пользоваться проще.
Или вы можете скачать консольную версию (т.е. командную строку с черным окошком и текстовым кодом, когда вы пользуетесь такой штукой, все думают, что вы хакер!). Например, git-scm. Такой программой пользоваться чуть-чуть сложнее.
Прежде всего, нужно создать свой репозиторий. Сделать это удобно на самом github'е, нажав на плюсик в правом верхнем углу окна. После этого запишите, пожалуйста, ссылку на свой репозиторий в форму, чтобы мы знали, где искать ваши домашки.
Если вы скачали SmartGit
- Скопируйте git-ссылку на ваш удаленный репозиторий (это не то же самое, что вы видите в адресной строке браузера).

-
В SmartGit откройте пункт меню Repository -> Clone и скопируйте туда эту ссылку.
-
Вносите изменения в файлы.
-
Нажмите кнопку Commit в верхнем меню, чтобы зафиксировать изменения.
-
Нажмите кнопку Push, чтобы внести изменения и в удалённый репозиторий.
-
При необходимости синхронизировать локальный репозиторий с удалённым, нажмите кнопку Pull в верхнем меню.
Если вы решили пользоваться консолью
- Скопируйте git-ссылку на ваш удаленный репозиторий (это не то же самое, что вы видите в адресной строке браузера).
- Откройте консоль и перейдите в любую симпатичную вам папку с помощью команды
cd(например,cd 'Мои Документы', cd = change directory). В консоли напишитеgit clone <git-ссылка>. На вашем компьютере появится локальный репозиторий со всеми файлами, которые лежали в удалённом. - Установите отслеживание ваших файлов, выполнив в консоли команду
git add . - Работайте на своём компьютере, меняйте содержание файлов, удаляйте их, добавляйте новые.
- Зафиксируйте произошедшие изменения, выполнив в консоли команду
git commit -m <message>. Вместо<message>нужно написать что-нибудь осмысленное, чтобы и спустя полгода вы могли вспомнить, какие изменения внесли. - Синхронизируйте ваш локальный и удалённый репозитории с помощью команды
git push. Введите имя пользователя и пароль. Все ваши изменения появятся на гитхабе. - Если вы работали на другом компьютере или ваши товарищи изменяли файлы в удалённом репозитории, синхронизировать удалённый и локальный репозитории можно с помощью команды
git pull. - Разрешить людям редактировать ваш код можно в настройках репозитория.

А ещё, если совсем-совсем ничего не получается,
а дедлайн наступает, можно воспользоваться веб-интерфейсом для загрузки файлов в репозиторий (а настоящие хакеры называют его просто реп)
Также можно посмотреть...
- Очень хороший курс по работе с git. Будете знать всё и даже гораздо больше.
- Обучающая компьютерная игра, которая поможет приобрести хорошие навыки в работе с git через консоль.
- Малоизвестные команды git.
