Git - это распределенная система контроля версий с открытым исходным кодом . Теперь это много слов для определения Git.
Позвольте мне разобрать это и пояснить формулировку:
- Система управления: это в основном означает, что Git является трекером контента. Таким образом, Git можно использовать для хранения контента - он в основном используется для хранения кода из-за других функций, которые он предоставляет.
- Система контроля версий : код, который хранится в Git, постоянно меняется по мере добавления нового кода. Кроме того, многие разработчики могут добавлять код параллельно. Таким образом, система контроля версий помогает справиться с этим, сохраняя историю произошедших изменений. Кроме того, Git предоставляет такие функции, как ветки и слияния, о которых я расскажу позже.
- Распределенная система контроля версий : у Git есть удаленный репозиторий, который хранится на сервере, и локальный репозиторий, который хранится на компьютере каждого разработчика. Это означает, что код не просто хранится на центральном сервере, но полная копия кода присутствует на всех компьютерах разработчиков. Git - это распределенная система управления версиями, поскольку код присутствует на каждом компьютере разработчика. Я объясню концепцию удаленных и локальных репозиториев позже в этой статье.
Зачем нужна система контроля версий, такая как Git
Реальные проекты обычно имеют несколько разработчиков, работающих параллельно. Таким образом, необходима система контроля версий, такая как Git, чтобы гарантировать отсутствие конфликтов кода между разработчиками.
Кроме того, требования в таких проектах часто меняются. Таким образом, система контроля версий позволяет разработчикам возвращаться к более старой версии кода.
Наконец, иногда несколько проектов, которые выполняются параллельно, включают одну и ту же кодовую базу. В таком случае очень важна концепция ветвления в Git.
Приступим к использованию Git прямо сейчас
Вместо того, чтобы упоминать все концепции сразу, я объясню концепции Git на примере, чтобы было легче следовать.
Скачать git
Эта ссылка содержит подробную информацию о том, как установить Git в нескольких операционных системах:
//git-scm.com/book/en/v2/Getting-Started-Installing-Git
Убедитесь, что Git установлен, используя следующую команду в командной строке:
git --version
Создайте свой локальный репозиторий Git
На вашем компьютере создайте папку для вашего проекта. Назовем папку проекта simple-git-demo
.
Перейдите в папку вашего проекта и добавьте в проект локальный репозиторий Git, используя следующие команды:
cd simple-git-demo git init
Команда git init
добавляет в проект локальный репозиторий Git.
Давайте сейчас добавим небольшой код
Создайте файл с именем demo.txt
в папке проекта и добавьте в него следующий текст:
Initial Content
Здесь мы будем демонстрировать простой текст вместо реального кода, поскольку основное внимание в этой статье уделяется Git, а не конкретному языку программирования.
Постановка и фиксация кода
Фиксация - это процесс, в котором код добавляется в локальный репозиторий . Перед фиксацией кода он должен быть в промежуточной области . Промежуточная область предназначена для отслеживания всех файлов, которые должны быть зафиксированы.
Любой файл, который не добавлен в область подготовки, не будет зафиксирован. Это дает разработчику контроль над тем, какие файлы необходимо зафиксировать.
Постановка
Используйте следующую команду для подготовки файла:
git add demo.txt
Если вы хотите добавить несколько файлов, вы можете использовать:
git add file1 file2 file3
Если вы хотите добавить все файлы из папки проекта в промежуточную область, используйте следующую команду:
git add .
Используйте это осторожно, поскольку он добавляет все файлы и папки вашего проекта в область подготовки.
Совершение
Используйте следующую команду, чтобы зафиксировать файл:
git commit -m "Initial Commit"
«Начальная фиксация» - это сообщение фиксации здесь. Введите соответствующее сообщение фиксации, чтобы указать, какие изменения кода были сделаны в этой конкретной фиксации.
Статус Git и журнал Git
Теперь измените demo.txt
файл и добавьте следующий фрагмент:
Initial Content Adding more Content
Положение дел
Используйте, git status
чтобы узнать информацию о том, какие файлы были изменены и какие файлы находятся в промежуточной области - он также показывает другую информацию, которую мы пока можем игнорировать.
Используйте следующую команду, чтобы увидеть статус:
git status
Статус показывает, что demo.txt
это изменено и еще не находится в области подготовки.
Теперь давайте добавим demo.txt
в промежуточную область и зафиксируем ее, используя следующие команды:
git add demo.txt git commit -m "demo.txt file is modified"
Журнал
Используйте, git log
чтобы распечатать все коммиты, которые были сделаны до сих пор.
Для этого используется следующая команда:
git log
Журнал показывает автора каждой фиксации, дату фиксации и сообщение фиксации.
ветви
До сих пор мы не создавали никаких веток в Git. По умолчанию коммиты Git попадают в главную ветку.
Что такое ветка?
Ветка - это не что иное, как указатель на последний коммит в репозитории Git. Итак, в настоящее время наша основная ветка является указателем на вторую фиксацию “demo.txt file is modified”
.
Зачем нужно несколько веток?
Для поддержки нескольких параллельных разработок необходимо несколько ветвей. См. Изображение ниже, чтобы увидеть, как работают ветки.

Изначально фиксация 1 и фиксация 2 выполнялись в основной ветке. После фиксации 2 создается новая ветка с именем «Test», и в тестовую ветвь добавляются фиксация 3 и фиксация 4.
В то же время в основную ветку добавляются разные коммиты 3 и 4. Здесь мы видим, что после фиксации 2 две параллельные разработки выполняются в двух отдельных ветвях.
Тестовая ветвь и мастер-ветка здесь разошлись и имеют разный код - код из тестовой ветки можно объединить с мастер-веткой, используя git merge
. Это будет рассмотрено позже.
Создать новую ветку в локальном
Создайте новую ветку под названием test, используя следующую команду:
git branch test
Эта команда создает test
ветку.
Мы все еще находимся в контексте ветки master. Для того, чтобы перейти на test
ветку. используйте следующую команду:
git checkout test
Сейчас мы в test
филиале.
Вы можете перечислить все ветки на локальном уровне, используя следующую команду:
git branch
Сделайте несколько коммитов в новой ветке
Измените demo.txt
, добавив следующий фрагмент:
Initial Content Adding more Content Adding some Content from test Branch
Теперь выполните этап и выполните фиксацию, используя следующие команды:
git add demo.txt git commit -m "Test Branch Commit"
Эта фиксация была сделана в тестовой ветке, и теперь тестовая ветвь опережает мастер-ветку на 1 фиксацию, поскольку тестовая ветвь также включает 2 фиксации из главной ветки.
Вы можете проверить историю фиксации в Test Branch, используя:
git log
Слияние
В настоящее время Test Branch опережает Master на 1 коммит. Допустим, теперь мы хотим, чтобы весь код из тестовой ветви был возвращен в главную ветвь. Это git merge
очень полезно.
Чтобы объединить код из тестовой ветки в главную ветвь, выполните следующие действия:
Сначала вернитесь в главную ветку:
git checkout master
Затем запустите merge
команду:
git merge test
После выполнения этих двух команд слияние должно быть успешным. В этом примере нет конфликтов.
Но в реальных проектах при слиянии будут конфликты. Разрешение конфликта - это то, что приходит с опытом, так что, работая больше с Git, вы сможете научиться разрешать конфликты.
Бегать git log
Теперь вы заметите, что у мастера также есть 3 коммита.
Удаленный репозиторий Git
До сих пор мы работали только в локальном репозитории. Каждый разработчик будет работать в своем локальном репозитории, но, в конце концов, он отправит код в удаленный репозиторий. Когда код находится в удаленном репозитории, другие разработчики могут видеть и изменять этот код.

GitHub
Здесь мы будем использовать GitHub для удаленного репозитория.
Перейдите на //github.com/ и создайте учетную запись.
После регистрации на домашней странице GitHub нажмите « Начать проект», чтобы создать новый репозиторий Git. Дайте репозиторию имя и нажмите «Создать репозиторий».
Дайте название как git-blog-demo
.
Это создаст удаленный репозиторий в GitHub, и когда вы откроете репозиторий, откроется страница, подобная изображению ниже:

URL-адрес репозитория - это выделенная часть //github.com/aditya-sridhar/git-blog-demo.git
Чтобы указать ваш локальный репозиторий на удаленный репозиторий, используйте следующую команду:
git remote add origin [repository url]
Git Push
Чтобы протолкнуть весь код из локального репозитория в удаленный репозиторий, используйте следующую команду:
git push -u origin master
Это перемещает код из главной ветви в локальном репозитории в главную ветку в удаленном репозитории.
Дополнительные команды
Git Pull
git pull
используется для извлечения последних изменений из удаленного репозитория в локальный репозиторий. Код удаленного репозитория постоянно обновляется различными разработчиками, поэтому git pull
необходимо:
git pull origin master
Git Clone
git clone
используется для клонирования существующего удаленного репозитория на ваш компьютер. Команда для этого:
git clone [repository url]
Поздравляю
Теперь вы знаете основы использования Git, так что продолжайте изучать больше!
Вскоре я опубликую еще одну статью о более сложных концепциях Git. Следите за обновлениями!
Об авторе
Я люблю технологии и слежу за их развитием. Мне также нравится помогать другим, используя свои знания в области технологий.
Не стесняйтесь связаться со мной в моей учетной записи LinkdIn //www.linkedin.com/in/aditya1811/
Вы также можете подписаться на меня в Twitter //twitter.com/adityasridhar18
Мой сайт: //adityasridhar.com/
Другие сообщения от меня
Как эффективно использовать Git