Git

Материал из theor
Перейти к: навигация, поиск

На вычислительном кластере установлена программа "git", позволяющая разрабатывать программы (а также статьи и прочее), последовательно сохраняя предыдущие версии. Таким образом, всегда можно вернуться к нужной версии, если что-то не работает в текущей. Описание на примерах, работать нужно либо в linux (bladerunner.theor.mephi.ru, например), либо поставить git-bash на windows http://git-scm.com/downloads .

* Пример1 : один пользователь разрабатывает свою программу.

1. Создаёте репозиторий для программы "app":

$ mkdir ~/app.git
$ cd app.git/
$ git init

2. Копируете исходный код в директорию /app.git и

$ git commit -m "initial code"

4. Получение кода на другом компьютере:

$ git clone your_login@bladerunner.theor.mephi.ru:app.git ./local_path-to-code


* Пример2 : несколько пользователей разрабатывают общую программу.

1. Просите админа (Крылова, Корнеева, Кельвича) сделать пользователя с именем, соответствующим вашей программе. 2. Входите под логином программы, создаёте репозиторий для программы "app":

$ mkdir ~/app.git
$ cd app.git/
$ git init --bare 

2. Входите под своим логином

$ git config --global user.email "ваш e-mail"
$ git config --global user.name "Ваше Имя"
$ git clone application_login@bladerunner.theor.mephi.ru:app.git ./path-to-code 

3. Копируете исходный код в директорию /path-to-code и

$ git add .   

-- в директории приложения. Каждый новый файл при появлении таких надо будет добавлять.

$ git commit -m "initial code"
$ git push origin master

4. Получение кода другим пользователем:

$ git clone application_login@bladerunner.theor.mephi.ru:app.git ./local_path-to-code

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

$ git pull 

из директории, в которой хранится ваш код. Для просмотра всех изменений в текущей версии

$ git log

Создание новой ветки

$ git branch -- список
$ git branch name -- создать
$ git checkout name -- перейти в бранч
$ git push origin name