Git start: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
 
(не показано 8 промежуточных версий 4 участников)
Строка 1: Строка 1:
{{stub}}
==Установка==
==Установка==
Для установки выполнте следующие команды:
Для установки выполните следующие команды:
  $ su -
  $ su -
  # apt-get install git
  # apt-get install git
Строка 22: Строка 21:
Выполнив команду:
Выполнив команду:
  $ git status
  $ git status
Git выведет файлы, которые еще не добавлены в репозиторий (будут выделены красным).
Git выведет файлы, которые ещё не добавлены в репозиторий (будут выделены красным).
  Untracked files:
  Untracked files:
   (use "git add <file>..." to include in what will be committed)
   (use "git add <file>..." to include in what will be committed)
Строка 37: Строка 36:
Выполнив команду:
Выполнив команду:
  $ git status
  $ git status
Git выведет файлы, которые уже добавлены в репозиторий (будут выделены зеленым).
Git выведет файлы, которые уже подготовлены к занесению в репозиторий (будут выделены зеленым).


Файлы, отмеченные зелёным, готовы к сохранению в их текущих состояниях. Именно об этом команда git add сообщила «Гиту». Но сохранения пока не произошло — сначала нужно сообщить «Гиту», что мы хотим сохранить, и только потом сохранять.
Файлы, отмеченные зелёным, готовы к сохранению в их текущих состояниях. Именно об этом команда git add сообщила «Гиту». Но сохранения пока не произошло — сначала нужно сообщить «Гиту», что мы хотим сохранить, и только потом сохранять.
Сохранение версии файлов в «Гите» называют «коммитом». Сделать коммит — значит сохранить текущее состояние файлов.
Сохранение подготовленных файлов в репозиторий называют «коммитом». Сделать коммит — значит сохранить текущее состояние файлов.
 
==Фиксация изменений - создание коммита==
==Фиксация изменений - создание коммита==
Когда все файлы готовы к сохранению, необходимо создать коммит — зафиксировать все сделанные изменения в репозитории.
Когда все файлы готовы к сохранению, необходимо создать коммит — зафиксировать все сделанные изменения в репозитории.
Строка 62: Строка 62:
  $ git clone адрес
  $ git clone адрес
Например:
Например:
  $ git clone http://git.altlinux.org/srpms/0/0ad-data.git
  $ git clone http://git.altlinux.org/gears/h/hello.git
 
==Откат изменений==
У Git есть два вида отката:
*"мягкий" (soft)
$ git reset --soft
*"жесткий" (hard)
$ git reset --hard
 
*Ключ {{path|--hard}} означает, что мы теряем текущее состояние файлов и перемещаемся на состояние того коммита, куда был сделан reset.
*Ключ {{path|--soft}} позволяет отменить последние коммиты. Сами изменения, которые были внесены в файлы, остаются в индексе для их дальнейшей модификации и последующего коммита.
 
{{Note|Здесь указываются первые семь символов длинного хэша git-коммита}}
Пример коммита:
ff494a833609113f45c4db75c426212724cb61d4
Использование:
$ git reset --soft ff494a8
 
{{Category navigation|title=Начинающему разработчику|category=Начинающему разработчику|sortkey={{SUBPAGENAME}}}}

Текущая версия от 13:46, 27 февраля 2025

Установка

Для установки выполните следующие команды:

$ su -
# apt-get install git

Первоначальная настройка

Указываем в настройках Git свое имя и адрес электронной почты. Для этого необходимо запустить команду git config с опцией --global и указать свои данные как значения user.name и user.email:

$ git config --global user.name "Stas Basov" 
$ git config --global user.email stasbasov@yandex.ru

Проверка значений:

$ git config --list

Выход Ctrl+Z.

Подключение Git к проекту

Чтобы Git начал работать в проекте, папку с ним нужно сделать git-репозиторием. Это значит, что Git начнёт отслеживать все изменения внутри этой директории. Для этого необходимо переместиться в папку с проектом и ввести команду git init:

$ cd /home/petr/projects/TDE
$ git init

В конце собщения о создании репозитория должна будет отобразиться строка типа:

Initialized empty Git repository in /home/petr/projects/TDE/.git/

Добавление файлов в репозиторий

Выполнив команду:

$ git status

Git выведет файлы, которые ещё не добавлены в репозиторий (будут выделены красным).

Untracked files:
  (use "git add <file>..." to include in what will be committed)
1 ...
2 ...
3 ...
...

Чтобы подготовить файлы к сохранению нужно выполнить следующую команду git add. При её использовании, нужно указать имя файла, который мы хотим зафиксировать в текущем виде, например:

$ git add index.html.

Если мы хотим сохранить состояние всех файлов, можно прибегнуть к опции --all.

$ git add --all

или короче

$ git add -A

Выполнив команду:

$ git status

Git выведет файлы, которые уже подготовлены к занесению в репозиторий (будут выделены зеленым).

Файлы, отмеченные зелёным, готовы к сохранению в их текущих состояниях. Именно об этом команда git add сообщила «Гиту». Но сохранения пока не произошло — сначала нужно сообщить «Гиту», что мы хотим сохранить, и только потом сохранять. Сохранение подготовленных файлов в репозиторий называют «коммитом». Сделать коммит — значит сохранить текущее состояние файлов.

Фиксация изменений - создание коммита

Когда все файлы готовы к сохранению, необходимо создать коммит — зафиксировать все сделанные изменения в репозитории.

Делается это командой git commit c опцией -m. После -m идёт название коммита в кавычках:

$ git commit -m "Начальный коммит"

Правка предыдущего коммита

$ git commit --amend

Правка изменений будет через редактор vim. Чтобы записать и выйти нужно ввести :wq и нажать Enter.

Как сделать ещё один коммит?

Чтобы сделать еще один коммит необходимо обновить содержимое файлов, зафиксировать их командой git add -A и вызвать git commit -m "комментарий" для сохранения версии.

Загрузка на сервер

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

$ git push

Загрузка репозитория с сервера

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

$ git clone адрес

Например:

$ git clone http://git.altlinux.org/gears/h/hello.git

Откат изменений

У Git есть два вида отката:

  • "мягкий" (soft)
$ git reset --soft
  • "жесткий" (hard)
$ git reset --hard
  • Ключ --hard означает, что мы теряем текущее состояние файлов и перемещаемся на состояние того коммита, куда был сделан reset.
  • Ключ --soft позволяет отменить последние коммиты. Сами изменения, которые были внесены в файлы, остаются в индексе для их дальнейшей модификации и последующего коммита.
Примечание: Здесь указываются первые семь символов длинного хэша git-коммита

Пример коммита:

ff494a833609113f45c4db75c426212724cb61d4

Использование:

$ git reset --soft ff494a8