Введение
В этой инструкции покажем, как установить Git на Windows, и поможем выбрать правильные параметры при установке. Затем создадим репозиторий и зафиксируем в нем изменения. Все это поможет вам сделать первые шаги в освоении Git.
Что такое Git и зачем он нужен
Git — это одна из самых популярных систем контроля версий (VCS). Такие системы помогают разработчикам хранить и версионировать исходный код приложений, настройки систем и другие текстовые файлы. И хотя ничего не мешает использовать VCS в других областях, чаще всего они применяются именно в IT.
Каждое состояние файлов в Git можно зафиксировать (сделать коммит), причем это навсегда останется в истории репозитория. Поэтому можно в любой момент посмотреть историю изменений файлов, сравнить различные версии и отменить отдельные изменения.
Также Git упрощает ведение параллельной разработки несколькими членами команды. Для этого используется ветвление. Условно можно сказать, что в Git-репозитории есть одна основная ветка, в которой хранится текущая стабильная версия исходного кода. Когда разработчик хочет изменить этот код, он «откалывает» себе отдельную ветку от основной и работает в ней. Когда работа закончена, он «вливает» изменения в основную ветку, чтобы его доработками смогли воспользоваться другие члены команды.
На самом деле все это описание довольно грубое, и по работе с Git можно написать не одну статью. На официальном сайте Git есть бесплатная электронная книга, в том числе она переведена на русский язык. А в этой статье мы сосредоточимся на установке Git в Windows и его первоначальной настройке.
Установка Git в Windows
Переходим на официальный сайт Git, в раздел загрузок. Мы увидим несколько вариантов установки: разные разрядности, портативная версия и даже установка из исходников. Мы выберем Standalone-версию, для этого проще всего нажать ссылку Click here to download, она всегда ведет на самую актуальную версию. Запускаем скачанный файл.
Выбор компонентов. Первый экран — выбор компонентов для установки. Если вам нужны дополнительные иконки на рабочем столе, или если вы хотите, чтобы Git ежедневно проверял наличие новой версии, — отметьте соответствующие опции. Остальные параметры лучше оставить по умолчанию.
Текстовый редактор по умолчанию. Необходимо выбрать редактор, который будет использовать Git — например, когда вы будете писать сообщение для коммита. Это не обязательно должен быть редактор, в котором вы планируете писать исходный код.
По умолчанию в установщике выбран Vim — консольный текстовый редактор, который для многих может показаться сложным в освоении. Если вы не знакомы с Vim и при этом хотите именно консольный редактор — выберите nano. Если у вас уже установлен какой-нибудь текстовый редактор — выбирайте его. Мы для примера будем использовать VSCode.
Название первой ветки. Тут нужно выбрать, как Git будет называть первую ветку в каждом репозитории. Раньше такая ветка всегда называлась master, но со временем это стало напоминать о временах рабства, и многие проекты и компании стали переименовывать ветки в своих репозиториях. Поэтому разработчики Git добавили эту опцию, чтобы название первой ветки можно было изменить. Мы будем придерживаться старого поведения и оставим название master.
Способ использования Git. Первая опция сделает Git доступным только из командной строки Git Bash. Это не очень удобно, потому что не позволит пользоваться Git-ом из других оболочек или интегрировать его с редактором кода. Вторая опция самая оптимальная (ее мы и выберем) — она позволяет работать с Git-ом из разных оболочек и интегрировать его с другими приложениями. Третья опция кроме установки Git также «перезапишет» некоторые системные команды Windows аналогами из Unix, и эту опцию нужно выбирать только если вы точно понимаете, что делаете.
Выбор SSH-клиента. Изначально Git поставлялся со встроенным SSH-клиентом, но недавно появилась опция, где можно использовать внешний клиент. Если у вас уже что-то установлено на компьютере — можете выбрать вторую опцию. Мы же остановимся на первой, так как предварительно ничего не устанавливали.
Выбор SSL/TLS библиотеки. По умолчанию Git будет использовать свою OpenSSL библиотеку с заранее определенным списком корневых сертификатов. Обычно этого достаточно, но если вам нужно работать со внутренними репозиториям внутри компании, которые используют самоподписанные сертификаты, выберите вторую опцию. Тогда Git будет использовать библиотеку и сертификаты из вашей операционной системы.
Символы перевода строки. Существует два основных способа формирования конца строки в файлах — CRLF и LF. Первый используется в Windows, второй — в Unix-like системах. Первая опция позволяет извлекать файлы из репозитория в Windows-стиле, при этом отправлять файлы в репозиторий в Unix-стиле. Мы рекомендуем использовать этот вариант, потому что он лучше всего подходит для кросс-платформенной команды, когда над одним кодом могут работать разработчики на разных ОС.
Эмулятор терминала. Эмулятор, который будет использоваться в командной строке Git Bash. MinTTY — удобный вариант, поэтому он выбран по умолчанию. Встроенный эмулятор CMD не очень удобен, у него есть некоторые ограничения, поэтому выбирайте его, только если делаете это осознанно.
Стратегия git pull. Первая опция будет пытаться обновить историю коммитов без создания коммитов слияния. Это самый оптимальный и часто используемый вариант, оставим его.
Credential Manager. Установка этого параметра позволит Git запоминать логины и пароли для подключения к удаленным репозиториям (например, GitHub, GitLab или корпоративное хранилище) и не вводить их постоянно.
Дополнительные настройки. Кэширование позволит ускорить работу Git, эту опцию рекомендуем оставить. А вот символические ссылки нам не нужны.
Экспериментальные настройки. Эти опции еще не переведены в стабильную стадию, поэтому их использование рекомендуется, только если вы точно понимаете, что делаете. Мы не будем ничего отмечать.
Git установлен и готов к работе.
Установка в различные дистрибутивы Linux
Также коротко покажем, как можно установить Git в различные дистрибутивы Linux. Как правило, самостоятельно скачивать ничего не нужно, достаточно воспользоваться встроенным в дистрибутив пакетным менеджером.
Debian
pt-get install git
Ubuntu
add-apt-repository ppa:git-core/ppa # apt update; apt install git
Fedora 21
yum install git
Fedora 22+
dnf install git
Gentoo
emerge --ask --verbose dev-vcs/git
Arch Linux
man -S git
OpenSUSE
ypper install git
Mageia
rpmi git
FreeBSD
pkg install git
OpenBSD
g_add git
RHEL, CentOS, Oracle Linux и др.
Как правило, пакетный установит довольно старую версию Git, поэтому рекомендуется собирать Git из исходных кодов, или воспользоваться сторонним репозиторием IUS Community.
Первоначальная настройка и создание репозитория
Перед началом работы с Git нужно указать свое имя и email, которые в дальнейшем будут записываться в историю изменений при каждом коммите. В будущем это позволит понять, кто именно внес те или иные изменения.
Откроем любое из приложений — Git Bash или Git CMD. Первое — это командная строка в стиле Linux, второе — командная строка в стиле Windows. Выбирайте то, что вам ближе. Мы выберем Git Bash и выполним две команды:
git config --global user.email "git-user@selectel.ru"
git config --global user.name "Selectel Git User"
Теперь Git полностью готов к работе. Давайте создадим репозиторий и зафиксируем в нем первое изменение (сделаем коммит). Для начала создадим каталог для будущего репозитория и сразу перейдем в него:
mkdir first-repo && cd first-repo
Создаем новый репозиторий в этом каталоге:
git init
Увидим ответ:
Initialized empty Git repository in C:/Users/git_user/first-repo/.git/.
Это означает, что в директории создан новый репозиторий. Далее создадим текстовый файл, назовем его README.md, и напишем в нем любой текст. Но сам по себе этот файл не попадет в следующий коммит. Мы должны проиндексировать изменения, то есть явно сказать Git-у, что этот файл нужно учитывать в следующем коммите:
git add README.md
Далее введем команду:
git commit
Откроется текстовый редактор, который мы выбирали на этапе установки Git. Тут нам нужно ввести комментарий для коммита, то есть кратко описать изменение, которое мы сделали. Мы напишем такой комментарий:
Обратите внимание, что Git автоматически добавил небольшую подсказку в это окно. При этом она не войдет в коммит, потому что в начале строки стоит символ решетки, и Git проигнорирует ее. Но она может быть полезна для дополнительной проверки: мы видим название текущей ветки и список файлов, которые войдут в коммит.
Сохраним файл и закроем редактор. Увидим примерно следующее сообщение:
[master (root-commit) 2b8f7a5] Add readme file
1 file changed, 3 insertions(+)
create mode 100644 README.md
Мы успешно сделали первый коммит.
Работа с Git в визуальном интерфейсе
Сам по себе Git — это утилита командной строки. Но не всем может быть удобно запоминать и писать команды в терминале, поэтому часто разработчики пользуются графическим интерфейсом. Есть несколько вариантов:
- Встроенный GUI. В базовой установке Git есть две простые утилиты: gitk и git gui. Но у них довольно старый интерфейс и пользоваться ими не всегда удобно.
- Отдельные графические утилиты. Они могут быть понятны и красивы, но неудобны тем, что код нужно писать в одной программе, а для работы с Git нужно переключаться в другую. Примеры таких программ: GitKraken, Sourcetree, GitAtomic. Большой список таких клиентов есть на официальном сайте Git.
- Встроенные в IDE или текстовый редактор. В большинстве популярных редакторов кода или IDE уже есть поддержка Git. Как правило, ничего дополнительно настраивать не нужно. Мы рассмотрим именно такой вариант на примере редактора VSCode.
Откроем директорию с репозиторием в редакторе VSCode. Внесите любое изменение в файл README.md и сохраните изменения. Обратите внимание, что в левой части редактора кое-что изменилось:
- Файл README.md подсветился желтым цветом, а рядом с ним появилась буква M (означает Modified — изменен).
- На панели Source Code появилась цифра 1, означающая, что есть одно изменение, которое можно зафиксировать.
Перейдем на панель Source Code. Слева находится список файлов, которые были изменены. Если кликнем на файл, то увидим какие именно изменения мы внесли: в этом случае добавили новую строчку This is the second commit.
Теперь давайте зафиксируем наши изменения. Рядом с названием файла нажмем на «плюс», чтобы проиндексировать его. Это аналогично команде git add, которую мы выполняли ранее. Затем в поле Message внесем комментарий и нажмем кнопку Commit. Это аналогично команде git commit.
Поздравляем, вы сделали уже два коммита в свой репозиторий!
Заключение
Итак, мы рассмотрели процесс установки Git под Windows, рассказали об основных параметрах установки и последующей настройки. Увидели, как репозиторий и внести в него первый коммит. Познакомились с работой в командной строке и с помощью графического интерфейса.
Git — это система управления версиями, которая предназначена для мониторинга изменений в файлах и управления историей этих изменений. Данное программное средство используется для контроля качества ПО и обеспечения безопасности кода. Git также позволяет проводить совместную работу над одним проектом нескольким специалистам одновременно, сохраняя историю изменений каждого участника.
Изображение: habr.com
В одной из прошлых инструкций мы рассказали об установке Git на Ubuntu. В отличие от нее, в Windows этот процесс может происходить в автономном установщике, а не в консоли, что намного удобнее и проще для пользователя. Базовые настройки, выбор компонентов и все остальные этапы установки будут происходить именно в нем.
В Windows Git обеспечивает пользователя набором инструментов и приложений для управления версиями файлов. Ниже будут приведены некоторые из доступных инструментов и функций, которые пользователь сможет использовать после выполнения установки ПО:
- Git Bash — это командная строка в Windows, которая позволяет выполнять команды Git. Помимо них, она содержит все стандартные команды Bash.
- Git GUI — это графический интерфейс для Git, который позволяет выполнять все основные операции с Git без использования командной строки. Он будет удобен для начинающих пользователей.
- Shell Integration — это функция, которая позволяет интегрировать Git с оболочкой Windows. Это означает, что вы можете выполнять команды Git прямо из оболочки, без необходимости открывать отдельную программу. Для этого вам нужно будет кликнуть правой кнопкой мыши по папке в системе, а затем выбрать Git Bash или Git GUI для дальнейшей работы.
В настоящей инструкции мы опишем установку Git на Windows, подробно объясним каждый этап в автономном установщике, а также выполним первоначальную настройку системы управления версиями, после которой можно будет сразу приступать к работе.
cloud
Предварительные требования
- Операционная система Windows (Windows 7 и выше). В инструкции будет производиться установка на Windows 11.
- Права администратора в вашей операционной системе.
- Доступ в интернет для загрузки установщика.
Шаг 1. В первую очередь, необходимо зайти на официальный сайт компании во вкладку «Downloads for Windows». Здесь пользователю будет предложено несколько способов установки:
- Установка последней поддерживаемой сборки;
- Автономный установщик для разной разрядности системы;
- Портативная версия для флеш-накопителя;
- Установка из исходного кода.
В рамках нашей инструкции мы выберем первый вариант, поэтому нажимаем на соответствующую ссылку, продемонстрированную на картинке ниже.
По окончании загрузки файла запускаем его и переходим к следующему шагу.
Шаг 2. В открывшемся окне установщика вас встретит общая публичная лицензия на софт. Здесь ничего делать не нужно, просто нажимаем кнопку «Next».
Шаг 3. Далее необходимо выбрать директорию, куда будет установлен Git. Для этого нажимаем на кнопку «Browse…» и указываем путь.
Для актуальной версии на момент написания статья вам потребуется не менее 321,5 мегабайт свободного места на диске.
Шаг 4. В следующем окне будет происходить выбор компонентов, которые будут установлены на устройство. Например, вы можете выбрать Git Bash для установки в Windows.
Если вам требуются дополнительные компоненты помимо выбранных по умолчанию (например, автоматическая проверка обновлений), установите рядом с ними флажок. Мы же оставим только те, что предлагает установщик, кроме последнего — Scalar.
Шаг 5. После выбора компонентов, программа установки предлагает создать ярлыки для устанавливаемого ПО в соответствующей папке в меню «Пуск». В строке ввода указывается имя этой папки. Чтобы пропустить этот необязательный этап, установите флажок рядом с надписью «Don’t create a Start Menu folder».
Если вы выполните этот шаг, то программа установки создаст директорию с ярлыками, подобно той, что показана на картинке ниже.
Шаг 6. В следующем установочном окне пользователю необходимо выбрать текстовый редактор, который в дальнейшем будет использоваться по умолчанию в системе. На выбор ему будет предложено несколько решений:
- Vim (рекомендован установщиком);
- Notepad / Notepad ++;
- Nano;
- VSC / VSC Insiders;
- Sublime Text;
- Atom;
- VSCodium.
Текстовый редактор Vim, который предлагает система для установки, может оказаться сложным решением для начинающих пользователей из-за своих особенностей в пользовательском интерфейсе и режимах работы. Более простой альтернативой ему может послужить консольный редактор Nano.
Как только вы выберете один из предложенных редакторов, нажмите кнопку «Next» и переходите к следующему шагу.
Шаг 7. Далее пользователю предстоит указать название начальной ветки в новых репозиториях. На момент написания инструкции, система предлагает имя master
, но обещает поменять его на более универсальное в ближайшем будущем. Можно выбрать вариант, предлагаемый системой, либо указать свой собственный. Мы выберем первый вариант.
Шаг 8. Следующим шагом пользователю необходимо выполнить настройку способа использования Git.
На выбор ему будет предложено три варианта:
- Взаимодействие с Git происходит исключительно в терминале Git Bash. Этот вариант рекомендован для тех, кто хочет использовать только стандартные возможности системы и не нуждается в сторонних инструментах;
- Взаимодействие с Git происходит из командной строки, а также из стороннего ПО. Сторонние инструменты могут включать в себя графические интерфейсы, такие как TortoiseGit или SourceTree, а также другие инструменты, которые могут облегчить работу с Git;
- Взаимодействие с Git происходит в терминале, но с использованием команд из Unix. Данный вариант следует выбирать, когда вы понимаете, что делаете и к каким последствиям это приведет.
Первый вариант не изменяет переменную PATH
, второй вносит небольшие модификации, а третий полностью перезапишет ее.
Мы выбираем вариант, предложенный системой по умолчанию, и нажимаем кнопку «Next».
Шаг 9. Далее необходимо выбрать SSH-клиент из двух предложенных вариантов. Это будет либо встроенный OpenSSH, либо внешний. По умолчанию, Git использует встроенный SSH-клиент, который называется ssh.exe
. Если вы хотите использовать внешний, вам нужно установить его отдельно.
Мы выберем первый вариант, так как не выполняли установку внешнего клиента.
Шаг 10. Следующим шагом пользователю необходимо выбрать SSL/TLS-библиотеку, которую Git будет использовать для HTTPS-подключений. По умолчанию установщик предлагает выбрать библиотеку OpenSSL. Такой вариант подойдет обычным пользователям. Но если вы работаете внутри компании, которая использует свои сертификаты, выбирайте второй вариант.
Мы выбираем первый вариант и нажимаем кнопку «Next».
Шаг 11. После установщик предлагает пользователю настроить обработку окончания строк в текстовых файлах. Она бывает двух видов: для UNIX-систем — LF, а для Windows — CRLF. В предложенных вариантах обработки, checkout
— это операция в Git, которая позволяет выбрать определенную ветку или коммит для работы, а commit
— это операция для сохранения изменений в репозитории.
Мы выбираем первый вариант, где checkout
выполняется в стиле Windows, а commit
в стиле UNIX.
Шаг 12. Далее, пользователь выбирает один из предложенных эмуляторов терминала для Git Bash. Лучшим вариантом будет MinTTY, предложенный установщиком по умолчанию. Выбираем его и переходим к следующему шагу.
Шаг 13. Теперь, пользователь должен выбрать поведение для команды git pull
. Рекомендуется оставить вариант по умолчанию. Он подразумевает стандартное поведение для команды.
Шаг 14. Одним из заключительных шагов является выбор помощника по учетным данным. Git Credential Manager хранит пароли и другие личные данные для подключение к удаленным репозиториям. Чтобы не вводить их постоянно, выбираем его и нажимаем кнопку «Next».
Шаг 15. На предпоследнем шаге пользователь настраивает дополнительные параметры. Здесь он может включить кэширование файловой системы и символические ссылки. Рекомендуется оставить эти настройки по умолчанию, оставив только первый параметр.
Шаг 16. И наконец, перед началом установки Git, пользователю будет предложено подключить экспериментальные параметры. Мы не рекомендуем этого делать, так как они еще не стабильны.
Оставляем все без изменений, нажимаем кнопку «Install» и ожидаем окончания установки.
После выполнения описанных шагов Git будет установлен в систему. Перед началом работы необходимо произвести первоначальную настройку. Она будет описана в следующем разделе.
Первоначальная настройка Git
Чтобы начать работу с Git, необходимо произвести его первоначальную настройку. Как и в Ubuntu, она заключается в выполнение двух команд, которые задают имя пользователя и его электронную почту.
- Открываем установленное приложение Git Bash и вводим в консоль следующую команду:
git config --global user.name "ExampleTestUser"
Не забудьте вместо ExampleTestUser
написать свое имя.
- После привяжем к пользователю его электронный адрес:
git config --global user.email "ExampleEmail"
Так же, как и с именем, не забудьте подставить вместо ExampleEmail
свою электронную почту.
После проведенных настроек Git готов к работе. Теперь вы можете переходить к созданию репозитория и выполнению своего первого коммита.
Заключение
В представленной инструкции был разобран процесс установки Git на Windows 11. Мы постарались подробно рассмотреть каждый этап в окне установщика, включая выбор дополнительных компонентов, SSH-клиента, SSL/TLS-библиотеки и других параметров.
Следуя данной инструкции, пользователи смогут самостоятельно установить и настроить Git на своих компьютерах.
Время на прочтение5 мин
Количество просмотров713K
Часть 2
Что такое Git и зачем он нужен?
Git — это консольная утилита, для отслеживания и ведения истории изменения файлов, в вашем проекте. Чаще всего его используют для кода, но можно и для других файлов. Например, для картинок — полезно для дизайнеров.
С помощью Git-a вы можете откатить свой проект до более старой версии, сравнивать, анализировать или сливать свои изменения в репозиторий.
Репозиторием называют хранилище вашего кода и историю его изменений. Git работает локально и все ваши репозитории хранятся в определенных папках на жестком диске.
Так же ваши репозитории можно хранить и в интернете. Обычно для этого используют три сервиса:
-
GitHub
-
Bitbucket
-
GitLab
Каждая точка сохранения вашего проекта носит название коммит (commit). У каждого commit-a есть hash (уникальный id) и комментарий. Из таких commit-ов собирается ветка. Ветка — это история изменений. У каждой ветки есть свое название. Репозиторий может содержать в себе несколько веток, которые создаются из других веток или вливаются в них.
Как работает
Если посмотреть на картинку, то становиться чуть проще с пониманием. Каждый кружок, это commit. Стрелочки показывают направление, из какого commit сделан следующий. Например C3
сделан из С2
и т. д. Все эти commit находятся в ветке под названием main
. Это основная ветка, чаще всего ее называют master
. Прямоугольник main*
показывает в каком commit мы сейчас находимся, проще говоря указатель.
В итоге получается очень простой граф, состоящий из одной ветки (main
) и четырех commit. Все это может превратиться в более сложный граф, состоящий из нескольких веток, которые сливаются в одну.
Об этом мы поговорим в следующих статьях. Для начала разберем работу с одной веткой.
Установка
Основой интерфейс для работы с Git-ом является консоль/терминал. Это не совсем удобно, тем более для новичков, поэтому предлагаю поставить дополнительную программу с графическим интерфейсом (кнопками, графиками и т.д.). О них я расскажу чуть позже.
Но для начала, все же установим сам Git.
-
Windows. Проходим по этой ссылке, выбираем под вашу ОС (32 или 64 битную), скачиваем и устанавливаем.
-
Для Mac OS. Открываем терминал и пишем:
#Если установлен Homebrew
brew install git
#Если нет, то вводим эту команду.
git --version
#После этого появится окно, где предложит установить Command Line Tools (CLT).
#Соглашаемся и ждем установки. Вместе с CLT установиться и git
-
Linux. Открываем терминал и вводим следующую команду.
# Debian или Ubuntu
sudo apt install git
# CentOS
sudo yum install git
Настройка
Вы установили себе Git и можете им пользоваться. Давайте теперь его настроим, чтобы когда вы создавали commit, указывался автор, кто его создал.
Открываем терминал (Linux и MacOS) или консоль (Windows) и вводим следующие команды.
#Установим имя для вашего пользователя
#Вместо <ваше_имя> можно ввести, например, Grisha_Popov
#Кавычки оставляем
git config --global user.name "<ваше_имя>"
#Теперь установим email. Принцип тот же.
git config --global user.email "<адрес_почты@email.com>"
Создание репозитория
Теперь вы готовы к работе с Git локально на компьютере.
Создадим наш первый репозиторий. Для этого пройдите в папку вашего проекта.
#Для Linux и MacOS путь может выглядеть так /Users/UserName/Desktop/MyProject
#Для Windows например С://MyProject
cd <путь_к_вашему_проекту>
#Инициализация/создание репозитория
git init
Теперь Git отслеживает изменения файлов вашего проекта. Но, так как вы только создали репозиторий в нем нет вашего кода. Для этого необходимо создать commit.
#Добавим все файлы проекта в нам будующий commit
git add .
#Или так
git add --all
#Если хотим добавить конкретный файл то можно так
git add <имя_файла>
#Теперь создаем commit. Обязательно указываем комментарий.
#И не забываем про кавычки
git commit -m "<комментарий>"
Отлично. Вы создали свой первый репозиторий и заполнили его первым commit.
Процесс работы с Git
Не стоит после каждого изменения файла делать commit. Чаще всего их создают, когда:
-
Создан новый функционал
-
Добавлен новый блок на верстке
-
Исправлены ошибки по коду
-
Вы завершили рабочий день и хотите сохранить код
Это поможет держать вашу ветки в чистоте и порядке. Тем самым, вы будете видеть историю изменений по каждому нововведению в вашем проекте, а не по каждому файлу.
Визуальный интерфейс
Как я и говорил ранее, существуют дополнительные программы для облегчения использования Git. Некоторые текстовые редакторы или полноценные среды разработки уже включают в себя вспомогательный интерфейс для работы с ним.
Но существуют и отдельные программы по работе с Git. Могу посоветовать эти:
-
GitHub Desktop
-
Sourcetree
-
GitKraken
Я не буду рассказывать как они работают. Предлагаю разобраться с этим самостоятельно.
Создаем свой первый проект и выкладываем на GitHub
Давайте разберемся как это сделать, с помощью среды разработки Visual Studio Code (VS Code).
Перед началом предлагаю зарегистрироваться на GitHub.
Создайте папку, где будет храниться ваш проект. Если такая папка уже есть, то создавать новую не надо.
После открываем VS Code .
-
Установите себе дополнительно анализаторы кода для JavaScript и PHP
-
Откройте вашу папку, которую создали ранее
После этого у вас появится вот такой интерфейс
-
Здесь будут располагаться все файлы вашего проекта
-
Здесь можно работать с Git-ом
-
Кнопка для создания нового файла
-
Кнопка для создания новой папки
Если ваш проект пустой, как у меня, то создайте новый файл и назовите его
index.html
. После этого откроется окно редактирование этого файла. Напишите в нем!
и нажмите кнопкуTab
. Автоматически должен сгенерироваться скелет пустой HTML страницы. Не забудьте нажатьctrl+s
чтобы файл сохранился.
Давайте теперь перейдем во вкладу для работы с Git-ом.
Откроется вот такое окно:
-
Кнопка для публикации нашего проекта на GitHub
-
После нажатия на кнопку
1
, появится всплывающее окно. Нужно выбрать второй вариант или там где присутствует фраза...public repository
Если вы хотите создать локальный репозиторий и опубликовать код в другой сервис, то необходимо нажать на кнопку
Initialize Repository
. После этого, вручную выбрать сервис куда публиковать.
После того, как выбрали «Опубликовать на GitHub публичный репозиторий» (пункт 2), программа предложит вам выбрать файлы, которые будут входить в первый commit. Проставляем галочки у всех файлов, если не проставлены и жмем ОК
. Вас перекинет на сайт GitHub, где нужно будет подтвердить вход в аккаунт.
Вы создали и опубликовали репозиторий на GitHub.
Теперь сделаем изменения в коде и попробуем их снова опубликовать. Перейдите во вкладку с файлами, отредактируйте какой-нибудь файл, не забудьте нажать crtl+s
(Windows) или cmd+s
(MacOS), чтобы сохранить файл. Вернитесь обратно во вкладу управления Git.
Если посмотреть на значок вкладки Git, то можно увидеть цифру 1 в синем кружке. Она означает, сколько файлов у нас изменено и незакоммичено. Давайте его закоммитим и опубликуем:
-
Кнопка для просмотра изменений в файле. Необязательно нажимать, указал для справки
-
Добавляем наш файл для будущего commit
-
Пишем комментарий
-
Создаем commit
-
Отправляем наш commit в GitHub
Поздравляю, вы научились создавать commit и отправлять его в GitHub!
Итог
Это первая вводная статья по утилите Git. Здесь мы рассмотрели:
-
Как его устанавливать
-
Как его настраивать
-
Как инициализировать репозиторий и создать commit через консоль
-
Как на примере VS Code, опубликовать свой код на GitHub
Забегая вперед, советую вам погуглить, как работают следующие команды:
git help # справка по всем командам
git clone
git status
git branch
git checkout
git merge
git remote
git fetch
git push
git pull
P.S. Для облегчения обучения, оставлю вам ссылку на бесплатный тренажер по Git.
https://learngitbranching.js.org/
В телеграмм канале Step by Step , я публикую еще больше материала и провожу обучающие стримы, для всех желающих.
#статьи
-
0
Команды разработчиков пользуются системой контроля версий. Чаще всего это Git. Разбираемся, что это значит, зачем нужно и как устроено.
Иллюстрация: Оля Ежак для Skillbox Media
Автор статей о программировании. Изучает Python, разбирает сложные термины и объясняет их на пальцах новичкам. Если что-то непонятно — возможно, вы ещё не прочли его следующую публикацию.
Git — это система для управления версиями исходного кода программ. В статье мы познакомимся с её основными возможностями, покажем отличие от GitHub и объясним, зачем Git новичку. Ещё вы узнаете, с чего начать обучение и почему не стоит тратить время на альтернативные программы.
Содержание
- Что такое Git
- Это система коммитов
- Это комплекс связанных веток
- Это инструмент совместного создания кода
- Как работает Git
- Чем Git отличается от GitHub
- Зачем новичку учить Git
- С чего начать: 3 шага, чтобы освоить Git
- Установка
- Настройка
- Создание репозитория
- Что дальше
Представьте себя в команде разработчиков. Вы скачиваете на компьютер копию проекта и пишете код. Так же поступают и остальные разработчики. Через некоторое время всей команде нужно объединять код и обмениваться друг с другом изменениями. Вот за это отвечает программа Git и сервис GitHub.
В этом разделе вы познакомитесь с основными возможностями, которые предоставляет Git. Это теория. В последнем разделе мы добавим инструкцию, по которой вы сможете установить Git к себе на компьютер.
Представьте ситуацию: геймер доходит до финала, проигрывает и возвращается к началу уровня — попадает в ближайшую контрольную точку игры, где разработчики разрешили сохраниться. Если мы уберём контрольные точки, после каждого проигрыша придётся начинать игру заново.
В программировании за сохранение кода в контрольных точках отвечает система контроля версий — специальная технология, которую можно подключить к любому проекту. Система контроля версий страхует от ошибок и возвращает код в то состояние, когда всё работало.
Контрольные точки называются коммитами. Один коммит — это пакет изменений, хранящий информацию с добавленными, отредактированными или удалёнными файлами кода. В один коммит принято добавлять не более десяти изменений — так получается длинная история версий, которая позволяет в случае ошибки откатиться с минимальной потерей работоспособного кода.
Инфографика: Skillbox Media
Коммиты располагаются на master-ветке — основной версии проекта, которая после завершения работы превратится в продукт.
Система контроля версий позволяет создавать ответвления от master-ветки и экспериментировать с проектом, не мешая другим участника команды.
Возьмём предыдущую схему, где мы обнаружили ошибку и откатились на один коммит назад. Чтобы поправить код, создадим несколько дополнительных веток и в каждой протестируем разные варианты решения проблемы. Когда решение найдено, ветку с правильным кодом переносим в master-ветку и сохраняем коммит. Лишние ветки оставляем или удаляем, поскольку они не влияют на проект и скрыты от других разработчиков — это ваш личный черновик.
Инфографика: Skillbox Media
Часто бывает так: разработчики отделяются от master-ветки и работают над частью проекта самостоятельно — например, чтобы протестировать дополнительные функции. Но не могут продолжить, пока кто-то из команды не допишет код.
Система контроля версий позволяет не ждать обновления master-ветки и разрешает всем участникам команды свободно перемещаться между ветками других разработчиков для копирования нужных фрагментов кода.
Бывают и обратные ситуации, когда несколько разработчиков одновременно дописывают код, заливают его в master-ветку и сталкиваются с конфликтом — один файл получает несколько несогласованных изменений. В этом случае Git попробует автоматически исправить ошибки. Если не получится, разработчики это увидят и смогут поправить код вручную.
Инфографика: Skillbox Media
Системы контроля версий бывают локальными, централизованными или распределёнными.
- Локальная система хранит файлы на одном устройстве, централизованная использует общий сервер, а распределённая — общее облачное хранилище и локальные устройства участников команды. В локальной системе удобно работать с большими проектами, но сложно взаимодействовать с удалённой командой.
- В централизованной системе налажена удалённая работа, но всё привязано к одному серверу. Любой сбой или взлом может повредить файлы проекта.
- В распределённой системе налажена удалённая работа. Если с файлами основного репозитория что-то случится — проект легко восстановить из копии любого участника команды.
Из-за удобства и гибкости распределённая система версий Git считается современным форматом. Это стандарт для большинства IT-команд.
Инфографика: Skillbox Media
Инфографика: Skillbox Media
Git — это программа, которую нужно установить и подключить к проекту для управления системой контроля версий. GitHub — это сайт-хранилище для историй версий проектов: вы подключаете Git, регистрируетесь на GitHub, создаёте онлайн-репозиторий и переносите файлы из Git на GitHub.
Git — это самая популярная система контроля версий, а GitHub — онлайн-хранилище кода. Git и GitHub настроены на взаимодействие и поэтому часто используются как единый механизм работы с проектом.
Если нужно, Git можно заменить альтернативной программой контроля версий, а GitHub — другим онлайн-хранилищем кода. Большинству работодателей это не нужно, поскольку знакомство с другими сервисами отнимает время и неудобно многим разработчикам.
Скриншот: Stack Overflow / Skillbox Media
Скриншот: Stack Overflow / Skillbox Media
Git используется в большинстве компаний, где над проектом работают хотя бы два разработчика:
- Новый человек приходит в компанию и клонирует репозиторий проекта на ПК.
- Получает задачу, создаёт новую ветку и пишет код.
- Когда всё готово — отправляет запрос на добавление кода в master-ветку.
- Другие разработчики смотрят код, оставляют комментарии и указывают на ошибки.
- Новичок дорабатывает код, обновляет master-ветку и переходит к следующей задаче.
Это общая схема того, как проходит командная работа в проекте. В ней не учтены правила использования Git, которые каждая команда пишет под себя. Например, у каждой команды свой порядок проверки кода и свои критерии его готовности для добавления в master-ветку.
Знание Git и знание правил использования Git в команде — это два разных навыка, которые можно сравнить с умением ездить на автомобиле и знанием правил дорожного движения. Если умеете управлять автомобилем — вам проще сконцентрироваться и быстро выучить правила. С Git аналогичная ситуация: если вы умеете управлять системой контроля версий, то можете сразу влиться в проект, не отвлекаться на второстепенные вещи и сосредоточиться на качестве кода.
Это практический раздел. Мы установим Git на компьютер, настроим его для работы, создадим локальный репозиторий и загрузим в него первый файл.
Перейдите на сайт git-scm.com и выберите способ установки Git под свою операционную систему. Для Windows можно скачать загрузочный файл и поставить Git как обычную программу. Базовые настройки можно не менять.
Git на macOS и Linux удобно устанавливать через программу «Терминал». Если у вас Linux — узнайте название своего дистрибутива. Если macOS — поставьте менеджер пакетов Homebrew. После введите команду загрузки.
# Устанавливаем Git на macOS $ brew install git # Устанавливаем Git на популярные Linux-дистрибутивы # Fedora yum install git # Debian/Ubuntu apt-get install git # OpenSUSE zypper install git
Если у вас macOS и Linux — оставайтесь в «Терминале». Если Windows — откройте программу Git Bash, которая установится вместе с системой Git.
Введите в консоли команду и проверьте установку Git. Вы должны увидеть номер версии, которая загружена в вашу систему. Иногда вместо номера версии выводится сообщение об ошибке: Unsupported command: git. Это означает, что Git установить не получилось и процесс нужно повторить.
# Команда для проверки установки Git git --version
Скриншот: Git / Skillbox Media
После установки Git нужно провести его начальную настройку. Для этого вам нужно указать свои имя, фамилию и почту. Эти данные видны в коммитах, и по ним другие разработчики будут знать, когда вы вносили изменения в проект.
# Команда для указания имени и фамилии git config --global user.name "Name Surname" # Команда для указания электронной почты git config --global user.email "your@email" # Команда для проверки настроек git config --list
Скриншот: Git Bash / Skillbox Media
Когда Git настроен, вы можете создать проект. Для этого выполним несколько команд: создадим новую папку, зайдём в неё и инициализируем репозиторий.
Если репозиторий успешно инициализирован, то у вас в проекте появится скрытая папка .git. В этой папке система Git будет хранить метаинформацию, которая необходима для работы. Это ваш локальный репозиторий.
# Создаём новую папку mkdir название_проекта # Переходим в созданную папку cd название_проекта # Инициализируем локальный репозиторий git init # Проверяем список открытых и скрытых файлов и папок ls -a
Скриншот: Git Bash / Skillbox Media
Проверим работу репозитория. Для этого создадим новый файл и выполним коммит — сохраним его в нашем локальном репозитории. Нужные команды:
# Создаём текстовый файл echo "# Test message" >> test.txt # Подготавливаем текстовый файл к коммиту git add . # Делаем коммит и сохраняем файл в репозитории git commit -m "My first commit"
Скриншот: Git Bash / Skillbox Media
Введём команду git log и посмотрим в журнал. Перед вами должна появиться информация о сделанном коммите. Вы увидите дату внесения изменений, имя и фамилию автора, почту, текст сообщения и хеш коммита. Теперь если вы продолжите разработку, то в любой момент сможете вернуться и посмотреть, в каком состоянии находился проект на этапе первого коммита.
Скриншот: Git Bash / Skillbox Media
Вы познакомились с системой Git, установили её на компьютер, создали свой локальный репозиторий и научились через консоль загружать в него файлы.
Если вы готовы к следующему шагу, то мы рекомендуем изучить основные команды для взаимодействия с Git и GitHub. Они позволят вам управлять рабочим процессом, ветками и удалённым репозиторием. Об этих командах мы написали статью и дополнили её практическим вебинаром с экспертом.
Бесплатный курс по Python ➞
Мини-курс для новичков и для опытных кодеров. 4 крутых проекта в портфолио, живое общение со спикером. Кликните и узнайте, чему можно научиться на курсе.
Смотреть программу