Участник:HihinRuslan/Памятка по работе с git/gear: различия между версиями

Материал из ALT Linux Wiki
Строка 68: Строка 68:
   
   
  git clone url_чужова_репозитоия
  git clone url_чужова_репозитоия
=== Базовые операции c ЛР ===
Для базовой работы с любой системой контроля версий требуется не особенно большой набор операций: добавление файла в репозиторий, удаление файла из репозитория, комит изменений в репозиторий, отмена незакомиченных изменений и получение списка изменений.
Добавление списка файлов в комит:
git add file1 file2 ... fileN
Добавление всех недобавленных файлов в комит:
git add -a
Удаление файла из комита:
git rm file1 file2 ... fileN
Удаление файла из комита и с жесткого диска:
git rm -f file1 file2 ... fileN
Комит в локальный репозиторий (надо отметить, что в таком случае закомитятся только файлы, которые были обработаны с помощью git add/rm):
git commit
Комит всех изменений в локальный репозиторий:
git commit -a
Отмена всех изменений, сделанных в дереве, до состояния, которое было при последнем комите в локальный репозиторий( очень опасная команда, подумайте прежде чем пользоваться ею):
git reset --hard
Создание файла различий относительно последнего комита:
git diff


===Источники:===
===Источники:===
Строка 74: Строка 98:
* [http://www.altlinux.org/Git.alt/Краткое_руководство Краткое_руководство по git.alt]
* [http://www.altlinux.org/Git.alt/Краткое_руководство Краткое_руководство по git.alt]
* [http://www.altlinux.org/Краткое_руководство_пользователя_git.alt Краткое руководство пользователя git.alt]
* [http://www.altlinux.org/Краткое_руководство_пользователя_git.alt Краткое руководство пользователя git.alt]
* [http://blog.nsws.ru/rabota-s-git-dlya-nachinayushhix.html Работа с git для начинающих]


[[Категория:FAQ]]
[[Категория:FAQ]]

Версия от 19:02, 18 мая 2011

Памятка по работе с git/gerar

Создана для личного применения. Т.к. я сборкой через git пользуюсь редко, буду вносить сюда всё, что нужно запомнить для работы с git/Gear.

Термины и сокращения применяемой в памятке:

ЛР = Локальный репозиторий — репозиторий на моём компе.
УР = Удалённый репозиторий — личный репозиторий на git.altlinux.ru.
СР = Системный репозиторий — репозиторий входящий в различные ветки 
     системных репозиториев — Сизифа и различных бренчей.
ДР = другой репозиторий — удалённые репозитории друзих пользователей.
ЧР = чужой репозиторий — все другие репозитории, не относящиеся к ALT Linux 

Создать ЛР

mkdir имя_пакета; cd имя_пакета; git init

Создать УР

ssh git.alt init-db имя_пакета
ssh git.alt init-db public/имя_пакета

Добавление файла README в ЛР

touch README
git add README
git commit -m 'first commit'

Удаление файла README из ЛР

git rm README
git commit

Забросить ЛР в УР

git remote add origin git.alt:packages/test.git
git push origin master

Указание УР origin и бранча master в команде push необходимо только в первый раз для создания бранча master в УР. git remote add создаёт в конфиг-файле ЛР запись, подобную такой:

[remote "origin"]
url = ssh://git.alt/people/dottedmag/packages/test.git
fetch = +refs/heads/*:refs/remotes/origin/*


И поэтому в дальнейшем

git push

будет отправлять в нужный УР все локальные ветки.

Удалить УР

ssh git.alt rm-db <path to git repository>

Например:

ssh git.alt rm-db public/имя_пакета

Копировать ДР в ур

ssh git.alt clone /people/ИМЯ_ПОЛЬЗОВАТЕЛЯ/packages/ИМЯ_ПАКЕТА

Копировать УР в ЛР

git clone git.alt:packages/ИМЯ_ПАКЕТА

=== Копировать ЧР в ЛР

git clone url_чужова_репозитоия


Базовые операции c ЛР

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

Добавление списка файлов в комит:

git add file1 file2 ... fileN

Добавление всех недобавленных файлов в комит: git add -a

Удаление файла из комита:

git rm file1 file2 ... fileN

Удаление файла из комита и с жесткого диска:

git rm -f file1 file2 ... fileN

Комит в локальный репозиторий (надо отметить, что в таком случае закомитятся только файлы, которые были обработаны с помощью git add/rm):

git commit

Комит всех изменений в локальный репозиторий:

git commit -a

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

git reset --hard

Создание файла различий относительно последнего комита:

git diff

Источники: