это – как установить git на windows 10

Пару недель назад я написал вступительную статью «

Git Explained for Beginners

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

терминология

Для ознакомления с терминологией Git, пожалуйста, обратитесь к моей

предыдущей статье

.

Настройка рабочей станции / Visual Studio

В последнее время Microsoft, похоже, признает Git в качестве ценной альтернативы своей проприетарной TFS (Team Foundation Server) тому, что касается контроля версий, и поэтому начала выпускать свое собственное расширение Visual Studio, которое в настоящее время находится в фазе «предварительного просмотра». Вы можете найти его здесь:

Visual Studio Tools for Git (Microsoft)

Скотт Хансельман также

написал об этом. Я быстро попробовал плагин и, хотя он отлично интегрируется с Visual Studio (в основном, как TFS), он все еще слишком большой бета на мой вкус.

В настоящее время лучшая альтернатива, которую я нашел, — это установить

Git Extensions для Windows

и

Git Source Control Provider

Visual Studio Plugin. В следующих разделах рассматриваются соответствующие установки.

Установите Git Extensions для Windows

Первым шагом является загрузка

Git Extensions

из соответствующего

Google Code Repository

.

Его мастер установки установит все, что вам нужно для полной настройки Git, установки Git (из

git-scm

) в различные инструменты Unix для Git Bash.

После того, как вы все установили, убедитесь, что все записи в контрольном списке Git Extension проходят для беспроблемной работы с Git.

Вы найдете этот контрольный список при открытии приложения Git Extensions, а затем перейдя к

Plugins > Settings

.

Установка Git Source Control Provider

Git Source Control Provider

— это расширение с открытым исходным кодом, которое использует установку Git вашей машины и интегрирует ее в Visual Studio.

Если вы успешно настроили Git (следуя процедуре, упомянутой выше), вы можете продолжить и установить расширение Git Source Control Provider для Visual Studio. Возможно, самый простой способ — через диалоговое окно «Расширения и обновления», в котором вам нужно просто выполнить поиск «git source control».

В качестве одного из следующих шагов вам нужно правильно

установить провайдера исходного кода

в Visual Studio, поскольку у вас их может быть больше (например, TFS). Это делается в настройках Visual Studio в разделе «Source Control»:

Вы должны увидеть запись «Git Source Control Provider». Выберите это и подтвердите ваши настройки. После этого вы также должны убедиться, что он правильно ссылается на ваши установки Git и Git Extensions:

Настройка вашего ключа SSH

Многие репозитории Git-сервера допускают разные модели аутентификации:

  • через

    https

    или

  • путем генерации

    ключа SSH

    .

Лично я предпочитаю последнее, так как ненавижу постоянно вводить свои учетные данные.

Чтобы получить руководство по генерации открытого ключа SSH, просто обратитесь к

документации по GitHub,

которая довольно подробно и хорошо объяснена.

Ну, вот и все, что касается установки.

Теперь

вы должны быть готовы начать.

Давайте начнем: создайте новый Git-репозиторий

Прежде всего, я просто создаю проект консоли, так как основное внимание здесь уделяется не созданию чего-то приятного и работающего, а скорее демонстрации интеграции Git в Visual Studio. Как только проект создан, мы можем настроить

локальный

репозиторий Git.

Это можно сделать, щелкнув правой кнопкой мыши по решению и выбрав «Создать Git Repository»:

После этой операции вы должны увидеть репозиторий для успешной настройки:

Более того, вы должны увидеть некоторые файлы, перечисленные в окне ожидающих изменений в Git:

Просто щелкните их все, добавьте содержательный комментарий и

подтвердите

их, нажав кнопку «Подтвердить».

Git SCP (отныне ссылающийся на расширение Git Source Control Provider для VS) предоставляет очень удобный и удобный механизм для просмотра реальной ситуации в вашем Git-репозитории, а именно путем визуализации лежащего в его основе дерева Git. Просто нажмите кнопку «История» …

… В окне «Ожидающие изменения» откроется новое окно с красивым графиком:

Пока что ничего особенного, но это показывает, что наш первоначальный коммит создал примечание, на которое (как и ожидалось) указывают HEAD и master. Нажатие на узел открывает дополнительные детали, такие как задействованные файлы и соответствующие различия.

.gitignore

Важным аспектом, который я не упомянул в

предыдущем уроке по Git,

является концепция файла

.gitignore

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

Из коробки Git SCP уже создает тот, который подходит для Visual Studio. В противном случае вы можете обратиться к проекту

Gitignore GitHub,

который представляет собой набор файлов .gitignore для различных типов IDE и языков программирования.

Создать и зафиксировать новый файл

Просто добавьте новый файл в ваш проект Visual Studio. Я добавил

Person.cs

с некоторым контентом. Вы должны сразу увидеть изменения, перечисленные в окне Pending Changes.

Примечание.

Вы можете открыть окно «

Ожидающие изменения

», щелкнув правой кнопкой мыши проект или файл решения Visual Studio и выбрав «Git (master)», а затем «Ожидающие изменения».

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

Наше дерево после коммита выглядит так:

Создать (особенность) ветку

Чтобы создать новую ветку, нажмите кнопку «

Расширения Git»

в окне ожидающих изменений, а затем «

Создать ветку».

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

Примечание:

мы также устанавливаем флажок «Оформить заказ после создания», и сразу же переключаемся на новую ветку. Это как-то похоже на

git checkout -b

команду на оболочке.

Диалоговое окно подтверждения показывает успешность операции и выполненную команду в оболочке.

Более того, в окне Pending Changes мы теперь видим текущую ветвь, в которой мы находимся, которая является только что созданной «my-feature-branch».

Теперь мы можем

изменить

существующий файл — скажем, наш

Person.cs

— и зафиксировать его. Окно Pending Changes точно показывает разницу изменений до того, как мы их передадим

После внесения изменений дерево продвинулось и обратите внимание, что сейчас

master

и

my-feature-branch

указывают на разные места.

HEAD

находится в нашей ветви функций, поскольку она является текущей активной.

Слияние и разрешение конфликтов

Вернемся к

мастеру

. Мы можем сделать это — снова — используя кнопку

ветви Checkout

из меню «Git Extensions».

Мы должны выбрать в

master

качестве нашего филиала и продолжить.

Примечание:

есть варианты того, как вы хотите обрабатывать любые локальные изменения, которые еще не были зафиксированы, то есть

хранить

их.

Дерево Git отражает это переключение на

master

ветку, так как оно

HEAD

теперь правильно указывает

master

снова.

В этом разделе я хотел бы продемонстрировать, как разрешить конфликт слияния. Чтобы это работало, нам нужно создать еще один коммит,

master

который конфликтует с изменениями

my-feature-branch

. Таким образом, давайте изменим

Person.cs

соответственно.

Наше дерево теперь более четко отражает существование нашей ветви функций.

Выполнение слияния

Учтите , что мы хотим объединить изменения , сделанные в

my-feature-branch

к

master

. Этот процесс инициируется с помощью кнопки

Merge

из меню Git Extensions.

Откроется диалоговое окно, позволяющее нам указать детали слияния.

Прежде всего, мы выбираем название филиала, которое есть

my-feature-branch

. Тогда есть два других варианта:

«Держите один ветку , если это возможно (ускоренная перемотка вперед)»

— быстрый вперед объясняется следующим

[…] Другими словами, когда вы пытаетесь объединить один коммит с коммитом, который можно получить, следуя истории первого коммита, Git упрощает задачу, перемещая указатель вперед, потому что нет другой работы по слиянию воедино — это называется «перемотка вперед».

Git SCM: базовое ветвление и слияние

Очевидно, это работает только тогда, когда нет конфликтов.

«Всегда создавать новый коммит слияния»

— это просто создаст новое сообщение коммита, явно указывающее, что что-то было слито.

Как и ожидалось, ускоренная пересылка завершается неудачно, и мы получаем уведомление о конфликте слияния

Окно Pending Changes показывает конфликт слияния

Git SCP спросит вас, нужно ли разрешать или игнорировать конфликты. Если вы ответите положительно, откроется диалоговое окно со всеми конфликтующими файлами.

Нажмите «Начать объединение», чтобы открыть настроенный инструмент объединения. В моем случае это открывает «kdiff3». Это может зависеть от вашей системы, в зависимости от того, как вы настроили установку Git.

После того, как вы разрешили все конфликты …

… Вы можете продолжить процедуру фиксации.

Опять же, дерево Git хорошо отражает слияние

Перейти к определенному коммиту

Переход к определенной фиксации довольно прост и может быть выполнен с помощью команды

Browse

из меню Git Extensions. Это открывает внешний графический интерфейс, визуализирующий дерево Git.

Оттуда вы можете использовать контекстное меню и нажать «

Оформить заказ выбранной ревизии».

В результате вы перейдете в режим

отсоединенной головы

. На самом деле, посмотрите на дерево:

HEAD

больше не указывает на ветку, но на конкретный коммит в истории. Чтобы вернуться назад, вы всегда можете просто выполнить проверку на

master

какой-либо произвольной ветви.

отмена

Откат может быть выполнен по-разному и с разными последствиями.

Файлы, не созданные для фиксации

Отменить локальные изменения, которые еще не были зафиксированы, довольно легко, и это можно сделать, просто щелкнув правой кнопкой мыши измененный файл и выбрав

«Отменить изменения файла»

Ой, я забыл включить…

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

… Тогда Git обладает приятной и удобной функциональностью: команда

Amend Last Commit

. Просто добавьте забытое изменение и нажмите кнопку.

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

«Вернуть» уже совершенные изменения

Но теперь предположим, что мы хотим вернуться полностью, отменив последнее изменение, которое мы сделали. Мы хотим, однако, явно показать, что «возвращение» изменений.

Обратите внимание

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

Чтобы использовать функцию «отменить», используйте «Обзор» в меню Git Extensions, щелкните правой кнопкой мыши на коммите, который вы хотите отменить, и выберите «

отменить коммит»

:

Это внесет изменения, которые вы можете затем внести обратно в репозиторий Git.

Дерево после фиксации отмененных изменений:

Отменить уже совершенные изменения

Давайте посмотрим, что мы делали раньше:

  • мы добавили свойство к

    Person.cs

  • мы выполнили возврат добавления свойства

По сути, наши двое перекрывают друг друга. Поэтому, если мы находимся в нашем

локальном

репозитории и

не синхронизировали

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

сброса

. Мы выбираем момент времени (т.е. фиксацию), до которого мы хотим сбросить настройки, и нажимаем «Сбросить текущую ветвь сюда»:

У вас будут разные возможности

В этой ситуации я предпочитаю делать

полный сброс, так

как мне не важно сохранять изменения в каталоге. После сброса наше дерево Git не отслеживает предыдущие коммиты:

Совместное использование / синхронизация вашего репозитория

До сих пор мы работали исключительно с нашим локальным Git-репозиторием. Чтобы

опубликовать наш репозиторий

, чтобы поделиться им с друзьями, нам нужно

отправить

его в какое-нибудь удаленное место. Это можно сделать из меню Git Extensions, выбрав команду

Push

.

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

Если вы еще не настроили какие-либо удаленные местоположения, вы должны сделать это с помощью «Управление удаленными».

Примечание.

По соглашению «Git remote», указывающий на репозиторий источника, называется

origin

.

После успешной настройки пультов вы можете выбрать один из них и нажать на него.

… и успехов!

Теперь файлы находятся в удаленном хранилище, в моем случае на внутреннем сервере GitLab нашей компании:

клонирование

Точно так же ваш товарищ по команде должен выполнить противоположную операцию, а именно

загрузить (клонировать)

репозиторий, который вы только что открыли, на свою локальную рабочую станцию.

Чтобы клонировать существующий репозиторий, используйте меню Visual Studio и выберите команду «

Клонировать репозиторий

».

Откроется диалоговое окно, в котором вы можете ввести URL-адрес хранилища Git, место назначения клона, а также ветку, которую вы хотите оформить (обычно

master

).

Дерево теперь также показывает ссылки на удаленные аналоги (origin / HEAD и origin / master).

Я хочу перенести проект TFS в Git

Если у вас уже есть проект, размещенный на TFS, и вы хотите перенести его в Git, вы можете использовать инструмент Microsoft

git-tf

.

Git-TF — это набор кроссплатформенных инструментов командной строки, которые облегчают обмен изменениями между TFS и Git.

Git-TF Codeplex

Как описано на сайте

проекта,

вы можете просто выполнить клонирование вашего TFS-репозитория, например

git tf clone http://myserver:8080/tfs/collectionName $/TeamProjectA/Main --deep

Не забудьте

--deep

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

git remote add origin git@mygitserver.com:mygituser/myreponame.git

..и затем выполнить

git push -u origin master

Примечание:

-u

нужен , как вы публикуете в

master

отрасли впервые на пульте ДУ.

Ресурсы и ссылки

Содержание

Отслеживание исходного кода это один из важнейших навыков, которыми должен обладать каждый разработчик. Git – это один из инструментов DevOps, который помогает разработчикам управлять своим исходным кодом от небольших до крупных проектов. Так же Git-это инструмент управления версиями с открытым исходным кодом. Который позволяет разработчикам размещать свой код на таких платформах, как Github, BitBucket и Gitlab. Это помогает им выполнять задачи по управлению кодом, например возврат к предыдущим версиям и т.д.

В этом небольшой инструкции мы покажем как выполняется установка и настройка Git на сервере Debian 11. Существует два подхода к установке Git. Вы можете установить из репозиториев Debian с помощью менеджера пакетов APT. Или установить из источника, который предоставляет последнюю версию Git.

Способ 1: Установка Git с помощью менеджера пакетов APT

Для начала требуется обновить индекс пакетов Debian. Сделать это можно следующей командой:

$ sudo apt update

Как только обновление будет завершено, установите Git из репозитория APT Debian, используя вот эту команду.

$ sudo apt install git

Как только установка будет завершена, проверьте версию Git:

$ git – version

image
Проверка версии Git

Вывод показывает, что мы установили Git версии 2.30.2.

Способ 2. Установка Git из исходного кода

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

Для начала установите все зависимости Git:

$ sudo apt update $ sudo apt install make libssl-dev libghc-zlib-dev libcurl4-gnutls-dev libexpat1-dev gettext unzip

Как только установка будет завершена, перейдите к проекту Git, который размещен на Github

https://github.com/git/git

Перейдите в ветку «Master» и нажмите на ссылку «Tags» и выберите последнюю опцию Git. Которая обычно является первой опцией сверху. Избегайте выбора версии-кандидата на выпуск (которая содержит суффикс rc). Это больше похоже на бета-версию и, скорее всего, будет ошибочной и нестабильной.

На момент написания этой инструкции последним выпуском Git был Git v2.33.0. Это тот релиз, который мы собираемся установить.

image
Выбор последней версии git для Debian

В дальнем правом углу нажмите кнопку «Код«, а затем скопируйте ссылку «Загрузить ZIP«.

Скачивание репозитория git на Github

Вернитесь на свой сервер Debian 11 и загрузите zip-файл с помощью команды wget.

$ wget https://github.com/git/git/archive/refs/heads/master.zip -O git.zip

Затем распакуйте сжатый файл.

$ unzip git.zip

Дале перейдите в несжатый каталог.

$ cd git-2.33.0

Теперь установите его из исходного кода, используя следующие команды:

$ sudo make prefix=/usr/local all $ sudo make prefix=/usr/local install

После завершения установки убедитесь, что у вас установлена последняя версия Git.

$ git – version

Проверка установленной версии git на Debian

Как настроить Git

На данный момент мы успешно выполнили установка Git на сервер Debian 11. Остался последний маленький нюанс. Нам нужно настроить его так, чтобы сообщения содержали правильную информацию.

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

$ git config – global user.name "Winnie" $ git config – global user.email "Winnie@xyz.com"

Чтобы убедиться, что конфигурация настроена правильно, выполните команду:

$ git config – list

Настройка git на сервере Debian

Эти сведения записаны в файле ~/.gitconfig. Вы можете дополнительно подтвердить это, просмотрев файл.

$ cat ~/.gitconfig

конфигурационный файл git

Заключение

Теперь вы можете использовать Git для размещения своего кода на любой платформе. А так же для размещения кода и совместной работы, такой как Github. В этой инструкции мы показали вам как выполнить установку Git на сервере Debian 11.

Вот тут можно скачать git

http://git-scm.com/download/win

Установка git

Запускаем, видим окно №1 — приветствие и нажимаем Next

Окно №2 — Лицензия, нажимаем Next

Окно №3 — опции установки, можно ничего не менять, данные настройки и так хороши для начала

Окно №4 — Выбор способа запуска командной строки Git — рекомендую первый способ «Use Git Bash only» во избежание геморроя

Окно №5 — Выбор способа работы с SSH — оставляем OpenSSH по умолчанию опять таки во избежание геморроя

Окно №6 — Выбор способа чекаута и коммита окончаний строк. Коммитить лучше в Unix-style, да и чекаутить тоже но в винде это особо значения не имеет разве что вы собираетесь править код в блокноте.

Окно №7 — Установка

Окно №8 — Завершение установки

Вуаля! Установка завершена!

09/01/2013 Опубликовано в категории: Git ‹ Детские сады вышли в интернет Как вернуть JSON из контроллера в Zend2 (ZF2) ›Время прочтения: 4 мин.

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

Для начала, предлагаю убедиться, что на машине установлен сам Git. В MS Windows это можно сделать открыв командную строку и набрав в ней git —version.

Если вдруг cmd не понимает такой команды, значит Git не установлен. Так как он является свободно распространяемым ПО, его можно бесплатно скачать и установить. Версия для MS Windows доступна по ссылке https://gitforwindows.org.

Теперь запускаем PyCharm и открываем какой-либо свой проект. С помощью команд главного меню VCS -> Enable Version Control Integration… ->  [в выпадающем списке] Git подключаем контроль версий.

Сразу же не забываем создать .gitignore, чтобы не таскать конфигурационные, сборочные файлы и т.п.

Также, нужно добавить конкретные файлы/директории, для которых Git будет отслеживать изменения. Изначально, после подключения контроля версий к проекту, все файлы выделятся красным цветом. Выделив необходимые из них и вызвав контекстное меню, кликаем Git -> Add. Файлы выделятся зеленым цветом – значит будут отслеживаться системой контроля версий.

Затем нужно будет сделать первый commit (Git -> Commit Files…), чтобы сохранить текущее состояние, к которому можно будет впоследствии откатиться с помощью rollback, если что-то пойдет не так.

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

Использование в разработке системы контроля версий, дает ряд неоспоримых преимуществ.

В любой момент времени, есть возможность посмотреть всю хронологию произведенных над файлом изменений с помощью (Git -> Show History). Удобно видеть кто, когда и что именно добавил в проект.

При необходимости, всегда можно посмотреть изменения более детально (Git -> Show Diff).

Конечно же, есть возможность работы с ветками: создавать, реализовывать в них новую функциональность, производить слияние.

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

Давайте рассмотрим, как запушить свой проект, например, на github (Git -> GitHub -> Share Project on GitHub). При использовании этой функции впервые, IDE попросит авторизоваться на GitHub.

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

Пушить commit-ы в удаленный репозиторий можно с помощью Git -> Push, либо при создании commit-а выбрать не commit, как раньше, а commit and push…, тогда создастся локальный commit и запушится в удаленный репозиторий.

Обновлять проект с учетом изменений в удаленном репозитории можно с помощью Git -> Update Project.

Мы рассмотрели основные операции, связанные с контролем версий, которыми пользуются разработчики, Data Scientist-ы, аналитики, инженеры и все, кто работает над проектами несколько более сложными чем “Hello World!”. Хотелось бы обратить внимание на то, что нам ни разу не пришлось прибегать к CLI и терминалу. Все базовые задачи нам удалось решить с помощью графического интерфейса IDE. В данной статье я попытался показать преимущества использования GUI, но, несомненно, работа через терминал имеет также свои плюсы и каждый волен выбирать то, что ближе ему.

GIT

Июн 14, 2018

Renat

6мин. чтения

Введение

Система контроля версий или VCS может значительно облегчить работу разработчиков, пытающихся проанализировать изменения и вклады в общий код. Проще говоря, система контроля версий — это ключевой элемент в системе управления настройками программного обеспечения, которые отвечают потребностям проекта. VCS дают возможность назначать для определенных изменений/ревизий/обновлений буквенные или числовые значения. Также могут предоставить информацию о временных метках и идентификаторе человека внесшего изменения. В этом руководстве мы расскажем вам о самой часто используемой системе контроля версий — GIT. Вы узнаете, что такое GIT и какие он имеет преимущества перед остальными VCS, а также мы расскажем об установке GIT на разные системы и его правильном использовании.

Что такое GIT?

В 2005 году, Линус Торвальдс (человек, известный тем, что стоял за созданием ядра Linux OS) разработал GIT для управления версиями ядра Linux, однако, чуть позднее его поддержкой занялся другой человек, японский инженер-программист — Джунио Хамано. На сегодняшний день, GIT — это одна из самых известных систем контроля версий с открытым исходным кодом, на которую полагаются миллионы проектов по всем миру (включая как коммерческие, так и бесплатные проекты). GIT — это полностью бесплатное программное обеспечение, поддерживающее множество ОС, таких как Mac, Linux, Windows и Solaris. Скачать соответствующие дистрибутивы можно с официального сайта GIT. Вот несколько функций GIT достойных упоминания:

  1. Распределенная система управления версиями, GIT следует принципу одноранговой сети — peer to peer (равный к равному) в отличии от других систем вроде Subversion (SVN), которая основана на модели client-server (клиент-сервер).
  2. GIT позволяет разработчикам иметь множество совершенно независимых веток кода. Создание, удаление и объединение этих веток происходит без каких-либо проблем и больших затрат времени.
  3. В GIT все операции атомарны; это означает, что любое действие может быть полностью удачным или провалиться (без каких-либо изменений). Это действительно важно, так как в некоторых системах контроля версий (вроде CVS), где действия не атомарны, некоторые повисшие операции по всему хранилищу, могут оставить его в нестабильном состоянии.
  4. В отличии от других VCS, таких как SVN или CVS где метаданные хранятся в скрытых папках (.cvs, .svn, и т.д.), в GIT все данные расположены в каталогах .git.
  5. Он использует модель данных, которая помогает обеспечить криптографическую целостность всего, что присутствует в репозитории. Каждый раз когда файлы добавляются или коммитятся, генерируются их контрольные суммы; аналогичный процесс происходит при их извлечении.
  6. Еще одна превосходная функция, присутствующая в GIT — это его индекс. В пределах индекса, разработчики могут форматировать коммиты и просматривать их до фактического применения.

Вот пожалуй мы и ответили на вопрос «Что такое GIT».

Он довольно прост в использовании. Для начала, вы можете либо создать новое хранилище, либо добавить существующее. После установки, команда git-init поможет вам с настройкой нового хранилища, или команда git clone поможет настроить пользователя для работающей копии локального хранилища.

Шаг 1 — Установка GIT

В данной части руководства будут показаны простейшие способы установки GIT на разные операционные системы:

Вариант 1 — Установка GIT на Windows

Установка GIT на Windows, осуществляется также просто, как и установка любого другого приложения; загрузка установщика и его запуск.  Выполните данные шаги для установки GIT на Windows:

  1. Посетите этот сайт и скачайте установщик GIT для Windows.
  2. После загрузки, запустите установку двойным нажатием мыши. Следуйте инструкциям на экране, продолжайте нажимать Next (Далее) и наконец Finish (Финиш) для успешного завершения установки.
  1. Запустите командную строку и впишите следующие команды в терминале:
git config --global user.name "John Smith"  git config --global user.email "example@email.com"

ЗАМЕТКА! Не забудьте изменить John Smith и example@email.com на ваши собственные личные данные. Любые впоследствии созданные коммиты будут связаны с этими данными.

Это все что нужно для установки GIT на Windows.

Вариант 2 — Установка GIT на Mac

Существует множество способов для установки GIT на Mac, есть даже вероятность того, что GIT уже установлен на вашем компьютере. Eсли у вас установлен XCode; выполните следующую команду в терминале для проверки:

git --version

Если ваш результат будет схож с таким git version 2.7.0 (Apple Git-66), тогда можете смело приступать к работе с GIT, если нет, то выполните следующие шаги:

  1. Посетите этот сайт и скачайте последнюю версию установщика для Mac.
  2. Следуйте инструкциям установщика и завершите установку.
  1. Используйте команду git —version снова, для подтверждения того, что установка была успешна.
  2. Выполните следующие команды в терминале для настройки вашего имени пользователя и адреса электронной почты, которые будут связаны с вашим GIT аккаунтом:
git config --global user.name "John Smith"  git config --global user.email "example@email.com"

ЗАМЕТКА! Не забудьте изменить John Smith и example@email.com на ваши собственные данные. Любые созданные в дальнейшем коммиты будут связаны с ними.

Вариант 3 — Установка GIT на Linux

Если вы являетесь пользователем Linux, вы должны уметь устанавливать программы и пакеты на ваш компьютер используя простые команды apt-get или yum install; чтож, установка GIT ничем отличается:

Для пользователей Debian/Ubuntu (apt-get):

  1. Откройте терминал и выполните следующую команду:
sudo apt-get update  sudo apt-get install git
  1. Проверьте правильности установки командой git —version.
  2. Выполните следующие команды в терминале для настройки вашего имени пользователя и адреса электронной почты, которые будут связаны с вашим GIT аккаунтом:
git config --global user.name "John Smith"  git config --global user.email "example@email.com"

ЗАМЕТКА! Не забудьте изменить John Smith и example@email.com на ваши собственные данные. Любые созданные в дальнейшем коммиты будут связаны с ними.

Fedora (yum/dnf):

Вы можете получить пакеты GIT, используя как yum, так и dnf.

  1. Откройте терминал и выполните следующие команды:
sudo dnf install git  
sudo yum install git
  1. Проверьте правильность установки командой git —version.
  2. Выполните следующие команды в терминале для настройки вашего имени пользователя и адреса электронной почты, которые будут связаны с вашим GIT аккаунтом:
git config --global user.name "John Smith"  git config --global user.email "example@email.com"

ЗАМЕТКА! Не забудьте изменить John Smith и example@email.com на ваши собственные данные. Любые созданные в дальнейшем коммиты будут связаны с ними.

Шаг 2 — Использование GIT

Теперь, когда GIT настроен на вашем устройстве Windows / Mac / Linux, давайте изучим основы GIT и то, как вы можете начать с ним работу.

  • Создание/настройка/клонирование репозитория:

Репозиторий является одним из самых сильных инструментов любого проекта с контролем версий. Для превращения любого каталога в репозиторий GIT поможет простая команда git init <каталог>. После выполнения команды, в месте где была выполнена команда должен появиться каталог с названием .git.

Если же у вас уже имеется каталог и вы хотите добавить (клонировать) его используйте команду git clone. Для клонирования локального репозитория используйте следующую команду:

git clone /путь/до/локального/репозитория

Если вы планируете клонировать удаленный репозиторий используйте:

git clone user.name@host:/путь/до/удаленного/репозитория

Если у вас есть учетная запись Hostinger, вы легко можете клонировать и управлять репозиторием через инструмент в Панели управления → GIT. К примеру, вы хотите клонировать репозиторий GIT, просто введите его адрес, выберите ветку, путь установки и нажмите кнопку Создать.

После завершения создания, вы сможете управлять своим репозиторием нажав кнопку Управление.

  • Рабочий процесс:

Теперь, когда репозиторий настроен, давайте поговорим о его структуре. Каждый локальный репозиторий состоит из трех деревьев: рабочего каталога — который состоит из файлов, индекса — который играет роль места где проходят все изменения перед их применением и HEAD — являющегося указателем на последний коммит пользователя. Сам рабочий процесс можно объяснить таким образом: пользователь добавляет файл или изменение из рабочего каталога в индекс, далее после его просмотра и анализа оно применяется к HEAD.

  • Команды Add и Commit:

Предлагаемые изменения или файлы добавляются в индекс используя команду add. Вот простая команда для добавления любого файла:

git add <имя_файла>

Если вы достаточно уверены в изменении для его коммита к HEAD, вы можете использовать команду commit. Для этого используйте следующую команду:

git commit –m “Добавьте здесь любое сообщение описывающее коммит”

ЗАМЕТКА! Как только команда commit будет выполнена (из рабочего каталога), будет произведен коммит файла к HEAD, однако отправка на удаленный репозиторий произведена не будет, для этого используется отдельная команда.

  • Дальнейшее продвижение изменений:

После коммита ваших изменений (и если они готовы к отправке в оригинальный репозиторий), вы можете использовать команду push.

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

Однако, если существующий репозиторий еще не был клонирован и вы хотите установить соединение между вашим репозиторием и удаленным сервером, сделайте это, запустив следующую команду:

git remote add origin <сервер>

ЗАМЕТКА! Замените значение в коде <сервер> на адрес удаленного сервера, который вам необходим в данный момент.

После клонирования, любые сделанные изменения будут перенесены на соответствующий сервер.

  • Ветки:

Еще одной превосходной и продвинутой особенностью GIT является возможность разработчикам и руководителям проектов создавать несколько независимых веток в рамках одного проекта. Основная цель ветки — это разработка функций, которые при этом находятся изолированно и не влияют друг на друга. Стандартная ветвь в любом проекте всегда является главной веткой. По мере необходимости, может быть создано любое количество веток, которые в конечном итоге могут быть объединены с главной веткой.

Новая ветка может быть создана с помощью данной команды:

git checkout -b feature_n *

feature_n это имя ветки

Если вы хотите переключиться обратно к главной ветке, используйте следующую команду:

git checkout master

При помощи данной команды может быть удалена любая ветка:

git checkout -d feature_n

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

git push origin feature_n
  • Обновление и объединение:

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

Для объединения активной ветки с какой-либо другой воспользуйтесь этой командой: git merge feature_n.

Используете ли вы pull или merge, GIT всегда пытается справиться с возникающими конфликтами самостоятельно, но это не всегда у него получается. В случае неудачи выполнения команды, пользователь должен разрешить возникший конфликт вручную. После того, как вы отредактировали файлы (для устранения конфликта), пометьте их как merged с помощью команды:

git add <имя.файла>

Если вы хотите просмотреть различия до слияния веток, может быть запущена следующая команда:

git diff <имя_ветки_источника> <имя_целевой_ветки>
  • Маркировка:

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

git tag 1.1.0 1c2d2d56fa

1c2d2d56fa в вышеприведенной команде относится к первым 10 символам commit-id, на которые ссылается тег. Идентификатор коммита или Commit ID можно найти в журнале.

  • Журнал:

Изучить историю репозитория можно заглянув в журнал. Команда для вызова журнала git log. Для отображения коммитов сделанных конкретным пользователем, используйте:

git log --author =Имя

Сжатую версию журнала (один коммит на строке) можно просмотреть при помощи команды :

git log --pretty=oneline

Для просмотра измененных файлов:

git log --name-status
  • Замена локальных изменений:

Если вы каким-то образом навели беспорядок и хотите отменить изменения, сделанные в файле, произведите этот процесс с помощью следующей команды:

git checkout -- <имяфайла>

Выполнив эту команду вы замените измененные данные в рабочем дереве на последние данные находящиеся в HEAD. Любые изменения, которые уже были добавлены в индекс не пострадают.

И наоборот, если все локальные изменения или фиксации должны быть удалены, а локальная главная ветвь должна быть привязана к последней истории с сервера, выполните следующие команды:

git fetch origin    git reset --hard origin/master

Заключение

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

Оцените статью
Рейтинг автора
4,8
Материал подготовил
Егор Новиков
Наш эксперт
Написано статей
127
А как считаете Вы?
Напишите в комментариях, что вы думаете – согласны
ли со статьей или есть что добавить?
Добавить комментарий