Работа с Git, что это такое - Git?
git - программка, которая позволяет следить за изменениями ваших файлов. Предназначен для слежения за изменениями в коде программ. Если вы работаете с гитом, вы можете просмотреть кто добавил эту строчку кода, когда и что написал разработчик в свое оправдание. Это очень удобный и полезный инструмент.
Также git позволяют синхронизировать файлы между несколькими разработчиками или рабочими местами через удаленные хранилища кода, который называются удаленными репозиториями. Вы можете одной командой выгрузить все ваши новые изменения в удаленный репозиторий, потом кто-то другой может одной командой их загрузить себе быстро.
Установка git в Windows
Скачайте нужный файл с сайта git и установите.
После установки в Меню Пуск появится несколько новых иконок (Git Bash, Git GUI). Мы будем пользоваться Git Bash - это командная строка, похожая на Линуксовскую, через которую мы можем вызывать команды git и который немного удобнее чем командная строка windows. Команды git также можно вызывать в стандартной командной строке.
Чтобы начать следить за изменениями файлов, нужно сначала создать репозиторий. Репозиторий - это хранилище изменений. Репозитории могут создаваться для каждой папки свои.
Для примера возьмем проект kyle, который будет находиться в нашей папке проектов projects. Через Поиск в пуске находим Git Bash и запускаем. С помощью команды cd переходим в папку projects, где бы она не находилась
... cd projects
Теперь создадим новую папку для проекта kyle и перейдем сразу в нее.
mkdir kyle cd kyle
Создание репозитирия
Пока в нашей папке нет никаких файлов. Создаем git-репозиторий тут чтобы следить за изменениями файлов в этой папке. Для этого используем команду:
git init
В ответ будет написано что-то такое:
Initialized empty Git repository in C:/Users/Alish/projects/kyle/.git/
Что в переводе означает "Создан пустой git репозиторий в папке C:/Users/Alish/projects/kyle/.git/"
Git создает свою скрытую папку с название .git в каждом репозиторие, и в этой папке хранит всю информацию об изменениях. Мы можем увидеть эту папку запустив команду просмотра списка файлов:
ls -la
И мы увидим:
drwxr-xr-x 1 Alish 197121 0 Jan 4 03:30 ./ drwxr-xr-x 1 Alish 197121 0 Jan 4 03:28 ../ drwxr-xr-x 1 Alish 197121 0 Jan 4 03:30 .git/
. - это текущая папка
.. - это родительская папка
.git - папка репозитория
Добавление файлов в контроль версий
Теперь у нас есть репозиторий. Нам нужно создать один файл, чтобы увидеть как git следит за изменениями. Используя любой редактор создаем в папке projects/kyle создаем файл program.py со следующим кодом
def sum(a, b):
return a+b
sum(3, 4)
После сохранения файла еще раз смотрим список файлов командой ls -la и видим что добавился один файл
drwxr-xr-x 1 Alish 197121 0 Jan 4 03:30 ./ drwxr-xr-x 1 Alish 197121 0 Jan 4 03:28 ../ drwxr-xr-x 1 Alish 197121 0 Jan 4 03:30 .git/ -rw-r--r-- 1 Alish 197121 43 Jan 4 03:42 program.py
Теперь, чтобы начать следить за этим файлом, мы должны добавить его в контроль. Для этого используется команда git add. Как параметр у этой команды нужно указать файл или шаблон имен файлов. Например следующая команда добавит только файл program.py в контроль:
git add program.py
А эта команда добавит в контроль все файлы с расширением .py в текущей папке
git add *.py
А следующая команда добавит все файлы в текущей папке и в подпапках
git add .
В нашем случае нам разницы нет какой из них использовать, в любом случае файл program.py будет добавлен в контроль версий.
После добавления в контроль, мы можем проверить текущее состояние изменений. Для этого вызываем команду
git status
и видим что есть новый файл
Changes to be committed: (use "git rm --cached <file>..." to unstage) new file: program.py
Сохранение изменений
После этого нам нужно сохранить сделанные изменения в файлах. Это операция в git называется коммитом. Для каждого коммита указывается имя и email разработчика и комментарий разработчика.
Данные разработчика берутся из настроек git, поэтому мы должны сначала в настройках установить свои данные. Мы можем глобально изменить свое имя следующей командой:
git config --global user.name "Alisher Alikulov"
а почту так:
git config --global user.email "masteraalish@gmail.com"
Теперь мы готовы делать коммиты. Чтобы сделать коммит нужно вызвать команду:
git commit -m "Add file program.py"
Всегда указывается комментарий после флага -m в кавычках.
Добавление файла у нас сохранено, т.е. можно сказать что первая версия файла готов. Теперь сделаем изменения в файле: изменим название функции на add и внизу добавим print. чтобы получилось так:
def add(a, b):
return a+b
print(add(3, 4))
print(add(10, 12))
print(add(99, 11))
после изменения файла, мы можем спросить состояние репозитория и узнать что файл program.py был изменен(modified)
git status
и красным будет написано
modified: program.py
Теперь мы должны зафиксировать это изменение и сохранить его. Для этого снова добавляем изменения файла в git:
git add .
Потом делаем коммит с указанием комментария:
git commit -m "Rename sum function"
Как залить файлы Git в удаленный репозиторий
Когда вам нужно поделиться вашим кодом с другими или сделать так, чтобы вы могли получать доступ к нему с любого места, вам нужно залить код в удаленный репозиторий. Есть бесплатные сервисы которые обеспечивают хранилищем для этого. Например github.com, bitbucket.org, gitlab.com.
Мы возьмем bitbucket.org как пример. Чтобы пользоваться им, нужно зарегистрироваться.
После регистрации, нам нужно создать репозиторий в Bitbucket, куда мы будем заливать наш код.
1. Создание репозитория в Bibucket
Для создания нового репозитория в главном меню сайта, откройте пункт Repositories и выберите там "Create repository". Дайте имя, уберите галочку "this is private repo" и нажмите "Create repository".
После этого Bitbucket создаст для вас репозиторий и подскажет что делать дальше. Если у вас уже есть код который вы хотите залить сюда, то внизу нажмите "> I have an existing project" (У меня есть существующий проект) и появится инструкцию для заливки кода.
Шаг 1. Перейти в папку проект на компьютера
cd projects/kyle/
Шаг 2. Подключить ваш локальный репозиторий к удаленному
Для этого вам сначала нужно скопировать ссылку в удаленный репозиторий сверху страницы. Там есть переключатель SSH->HTTPS и ссылка. Переключите на HTTPS и скопируйте ссылку.
Скопированную ссылку введите в командной строке в команду вместо "https://test@test":
git remote add origin https://test@test
Теперь нужно залить код в Bitbucket. Для этого используется команда:
git push -u origin master
После этого вам придется ввести ваше имя пользователя и пароль от Bitbucket.
Если успешно все прошло, то вы можете посмотреть ваш код на главной странице в Bitbucket.