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

Материал из theor
Перейти к: навигация, поиск
 
(не показаны 3 промежуточные версии этого же участника)
Строка 44: Строка 44:
 
  $ git checkout name -- перейти в бранч
 
  $ git checkout name -- перейти в бранч
 
  $ git push origin name
 
  $ git push origin name
 +
 +
 +
'''Работа с заданиями в GitHub Classroom'''
 +
 +
1. Зарегистрируйтесь на https://github.com, если вы там не были зарегистрированы ранее.
 +
Короткое обучение: https://guides.github.com/activities/hello-world/
 +
 +
2. Вы получите ссылку с приглашением для выполнения задания, размещённого в GitHub Classroom. После принятия приглашения будет создан пустой репозиторий на GitHub, привязанный к вашему профилю. В него можно будет загружать ваше задание по мере его выполнения.
 +
 +
3. Создайте репозиторий с исходным кодом, как это описано в Примере 1. Репозиторий хранится локально, теперь его нужно загрузить на GitHub Classroom.
 +
 +
4. Подключите удалённый репозиторий, который вам был выдал по приглашению
 +
$ git remote add ''origin'' ''https://github.com/link-to-your-github-repo.git''
 +
Вместо "origin" может быть и другое имя.
 +
 +
5. Загрузите код командой
 +
$ git push -u origin master
 +
 +
6. Если вы хотите продолжить работу на другой машине, где локально репозитория ещё нет, перейдите в директорию, где вы хотите создать копию удалённого репозитория с GitHub Classroom и введите команду
 +
$ git clone ''https://github.com/link-to-your-github-repo.git''
 +
Эта команда автоматически подключит удалённый репозиторий (с именем origin), поэтому в дальнейшем можно сразу делать push с внесённым изменениями (п. 5) без выполнения п.4.
 +
 +
7. Если локальный репозиторий уже существует, и вы хотите подгрузить более свежую версию кода из подключеннного удалённого репозитория, используйте команду
 +
$ git pull origin master

Текущая версия на 20:49, 9 февраля 2018

На вычислительном кластере установлена программа "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


Работа с заданиями в GitHub Classroom

1. Зарегистрируйтесь на https://github.com, если вы там не были зарегистрированы ранее. Короткое обучение: https://guides.github.com/activities/hello-world/

2. Вы получите ссылку с приглашением для выполнения задания, размещённого в GitHub Classroom. После принятия приглашения будет создан пустой репозиторий на GitHub, привязанный к вашему профилю. В него можно будет загружать ваше задание по мере его выполнения.

3. Создайте репозиторий с исходным кодом, как это описано в Примере 1. Репозиторий хранится локально, теперь его нужно загрузить на GitHub Classroom.

4. Подключите удалённый репозиторий, который вам был выдал по приглашению

$ git remote add origin https://github.com/link-to-your-github-repo.git

Вместо "origin" может быть и другое имя.

5. Загрузите код командой

$ git push -u origin master

6. Если вы хотите продолжить работу на другой машине, где локально репозитория ещё нет, перейдите в директорию, где вы хотите создать копию удалённого репозитория с GitHub Classroom и введите команду

$ git clone https://github.com/link-to-your-github-repo.git

Эта команда автоматически подключит удалённый репозиторий (с именем origin), поэтому в дальнейшем можно сразу делать push с внесённым изменениями (п. 5) без выполнения п.4.

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

$ git pull origin master