|
|
|
@ -0,0 +1,879 @@
|
|
|
|
|
rybin@Bomba MINGW64 ~
|
|
|
|
|
$ cd C:
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c
|
|
|
|
|
$ cd Users
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users
|
|
|
|
|
$ cd Rybin
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin
|
|
|
|
|
$ cd OneDrive
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive
|
|
|
|
|
$ cd Desktop
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop
|
|
|
|
|
$ cd lab02
|
|
|
|
|
|
|
|
|
|
Ход работы:
|
|
|
|
|
|
|
|
|
|
Вход в терминал и создание структуры каталогов
|
|
|
|
|
Создаем папки пользователей (mkdir alice, mkdir bob)
|
|
|
|
|
В папке пользователя alice создаем папку project
|
|
|
|
|
|
|
|
|
|
Инициализация репозитария и настройка Git:
|
|
|
|
|
|
|
|
|
|
Инициализируем хранилище git (git init)
|
|
|
|
|
Настраиваем папки пользователя, с которым будем работать:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02
|
|
|
|
|
$ mkdir alice
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02
|
|
|
|
|
$ mkdir bob
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02
|
|
|
|
|
$ cd alice
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice
|
|
|
|
|
$ mkdir project
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice
|
|
|
|
|
$ cd project
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project
|
|
|
|
|
$ cd ..
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice
|
|
|
|
|
$ cd project
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project
|
|
|
|
|
$ git init
|
|
|
|
|
Initialized empty Git repository in C:/Users/rybin/OneDrive/Desktop/lab02/alice/project/.git/
|
|
|
|
|
|
|
|
|
|
Создание коммитов:
|
|
|
|
|
|
|
|
|
|
Занесение файлов под контроль версий
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (master)
|
|
|
|
|
$ git branch -m main
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ ls -A
|
|
|
|
|
.git/
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git config user.name 'Alice (StepanovaKY)'
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git config user.email 'StepanovaKY@empei.ru'
|
|
|
|
|
|
|
|
|
|
Просматриваем состояние рабочей копии(git status)
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git status
|
|
|
|
|
On branch main
|
|
|
|
|
|
|
|
|
|
No commits yet
|
|
|
|
|
|
|
|
|
|
Untracked files:
|
|
|
|
|
(use "git add <file>..." to include in what will be committed)
|
|
|
|
|
bin/
|
|
|
|
|
main.cpp
|
|
|
|
|
obj/
|
|
|
|
|
project.cbp
|
|
|
|
|
|
|
|
|
|
nothing added to commit but untracked files present (use "git add" to track)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
В первой строке ссылка HEAD указывает на ветку main
|
|
|
|
|
Вторая стр. говорит о том, что еще не было создано коммитов
|
|
|
|
|
Третья стр. показывает не отслеживаемые файлы в хранилище git, и подсказывает как их добавить
|
|
|
|
|
Последняя стр. говорит о том, что нет добавленных (отслеживаемых) файлов, которые можно будет закоммитить
|
|
|
|
|
Добавляем файл с кодом и просматриваем изменения
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git add main.cpp
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git status
|
|
|
|
|
On branch main
|
|
|
|
|
|
|
|
|
|
No commits yet
|
|
|
|
|
|
|
|
|
|
Changes to be committed:
|
|
|
|
|
(use "git rm --cached <file>..." to unstage)
|
|
|
|
|
new file: main.cpp
|
|
|
|
|
|
|
|
|
|
Untracked files:
|
|
|
|
|
(use "git add <file>..." to include in what will be committed)
|
|
|
|
|
bin/
|
|
|
|
|
obj/
|
|
|
|
|
project.cbp
|
|
|
|
|
Появилась строка с файлами в индексе, стоящими в очереди на коммит
|
|
|
|
|
|
|
|
|
|
Составление сообщений к коммитам
|
|
|
|
|
Создаем 2 коммита с информацией о коде программы
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git commit -m 'code: заготовка программы'
|
|
|
|
|
[main (root-commit) e6e2269] code: заготовка программы
|
|
|
|
|
1 file changed, 9 insertions(+)
|
|
|
|
|
create mode 100644 main.cpp
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git add project.cbp
|
|
|
|
|
warning: in the working copy of 'project.cbp', LF will be replaced by CRLF the next time Git touches it
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git status
|
|
|
|
|
On branch main
|
|
|
|
|
Changes to be committed:
|
|
|
|
|
(use "git restore --staged <file>..." to unstage)
|
|
|
|
|
new file: project.cbp
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git commit -m 'build: добавлен файл проекта'
|
|
|
|
|
[main 57f1f4f] build: добавлен файл проекта
|
|
|
|
|
1 file changed, 40 insertions(+)
|
|
|
|
|
create mode 100644 project.cbp
|
|
|
|
|
|
|
|
|
|
После добавления в программу ввода 2х чисел видим, что файл main.cpp был изменен
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git status
|
|
|
|
|
On branch main
|
|
|
|
|
Changes not staged for commit:
|
|
|
|
|
(use "git add <file>..." to update what will be committed)
|
|
|
|
|
(use "git restore <file>..." to discard changes in working directory)
|
|
|
|
|
modified: main.cpp
|
|
|
|
|
|
|
|
|
|
Untracked files:
|
|
|
|
|
(use "git add <file>..." to include in what will be committed)
|
|
|
|
|
bin/
|
|
|
|
|
obj/
|
|
|
|
|
|
|
|
|
|
no changes added to commit (use "git add" and/or "git commit -a")
|
|
|
|
|
|
|
|
|
|
Проделываем ряд изменений с кодом программы и делаем коммиты суммы и разности
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git add main.cpp
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git commit -m 'code: добавлен ввод чисел и вывод их суммы и разности'
|
|
|
|
|
[main f35c583] code: добавлен ввод чисел и вывод их суммы и разности
|
|
|
|
|
1 file changed, 3 insertions(+), 2 deletions(-)
|
|
|
|
|
|
|
|
|
|
Игнорирование файлов
|
|
|
|
|
Укажем Git игнорировать присутствие каталога bin и obj
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git status
|
|
|
|
|
On branch main
|
|
|
|
|
Untracked files:
|
|
|
|
|
(use "git add <file>..." to include in what will be committed)
|
|
|
|
|
.gitignore
|
|
|
|
|
obj/
|
|
|
|
|
|
|
|
|
|
nothing added to commit but untracked files present (use "git add" to track)
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git add .gitignore
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git commit -m 'git: игнорирование бинарных файлов'
|
|
|
|
|
[main 1dc38fd] git: игнорирование бинарных файлов
|
|
|
|
|
1 file changed, 3 insertions(+)
|
|
|
|
|
create mode 100644 .gitignore
|
|
|
|
|
|
|
|
|
|
git: добавлен файл .gitignore для игнорирования каталогов bin и obj
|
|
|
|
|
|
|
|
|
|
Просмотр истории:
|
|
|
|
|
|
|
|
|
|
С помощью команды git log и различных ее опций просматриваем журнал коммитов
|
|
|
|
|
Используем команду git log –stat
|
|
|
|
|
|
|
|
|
|
commit f35c5833ccc51b116c8ce1836e365319595d6cdf
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 13:25:32 2025 +0300
|
|
|
|
|
|
|
|
|
|
code: добавлен ввод чисел и вывод их суммы и разности
|
|
|
|
|
|
|
|
|
|
commit 57f1f4feaa3d50491f4d4ef26a52bd7b86242561
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 11:07:59 2025 +0300
|
|
|
|
|
|
|
|
|
|
build: добавлен файл проекта
|
|
|
|
|
|
|
|
|
|
commit e6e22691cdb433025be59b85dd526be2fd0017a4
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 11:03:57 2025 +0300
|
|
|
|
|
|
|
|
|
|
code: заготовка программы
|
|
|
|
|
|
|
|
|
|
В последнем коммите первой строкой показывается хэш коммита, по которому можно
|
|
|
|
|
потом найти этот коммит
|
|
|
|
|
Во 2 стр. записан автор, внесший этот коммит, а стр. ниже – время создания коммита
|
|
|
|
|
Далее идет комментарий к коммиту
|
|
|
|
|
Перечисление файлов, в которых произошли изменения и кол-во измененных строчек(“+” добавленная стр., “-” удаленная стр.)
|
|
|
|
|
В последней стр. приведена статистика изменений данных файлов
|
|
|
|
|
|
|
|
|
|
(Использование других способов просмотра истории)
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git log
|
|
|
|
|
commit e10fefcdfc9578bf5561d214853dd269e3c7bae5 (HEAD -> main)
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 13:34:38 2025 +0300
|
|
|
|
|
|
|
|
|
|
git: добавлен файл .gitignore для игнорирования каталогов bin и obj
|
|
|
|
|
|
|
|
|
|
commit f35c5833ccc51b116c8ce1836e365319595d6cdf
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 13:25:32 2025 +0300
|
|
|
|
|
|
|
|
|
|
code: добавлен ввод чисел и вывод их суммы и разности
|
|
|
|
|
|
|
|
|
|
commit 57f1f4feaa3d50491f4d4ef26a52bd7b86242561
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 11:07:59 2025 +0300
|
|
|
|
|
|
|
|
|
|
build: добавлен файл проекта
|
|
|
|
|
|
|
|
|
|
commit e6e22691cdb433025be59b85dd526be2fd0017a4
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 11:03:57 2025 +0300
|
|
|
|
|
|
|
|
|
|
code: заготовка программы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git log --stat
|
|
|
|
|
commit e10fefcdfc9578bf5561d214853dd269e3c7bae5 (HEAD -> main)
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 13:34:38 2025 +0300
|
|
|
|
|
|
|
|
|
|
git: добавлен файл .gitignore для игнорирования каталогов bin и obj
|
|
|
|
|
|
|
|
|
|
.gitignore | 3 +++
|
|
|
|
|
1 file changed, 3 insertions(+)
|
|
|
|
|
|
|
|
|
|
commit f35c5833ccc51b116c8ce1836e365319595d6cdf
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 13:25:32 2025 +0300
|
|
|
|
|
|
|
|
|
|
code: добавлен ввод чисел и вывод их суммы и разности
|
|
|
|
|
|
|
|
|
|
main.cpp | 5 +++--
|
|
|
|
|
1 file changed, 3 insertions(+), 2 deletions(-)
|
|
|
|
|
|
|
|
|
|
commit 57f1f4feaa3d50491f4d4ef26a52bd7b86242561
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 11:07:59 2025 +0300
|
|
|
|
|
|
|
|
|
|
build: добавлен файл проекта
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git log --oneline --decorate
|
|
|
|
|
e10fefc (HEAD -> main) git: добавлен файл .gitignore для игнорирования каталогов bin и obj
|
|
|
|
|
f35c583 code: добавлен ввод чисел и вывод их суммы и разности
|
|
|
|
|
57f1f4f build: добавлен файл проекта
|
|
|
|
|
e6e2269 code: заготовка программы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git log --oneline --decorate --all --graph
|
|
|
|
|
* e10fefc (HEAD -> main) git: добавлен файл .gitignore для игнорирования каталогов bin и obj
|
|
|
|
|
* f35c583 code: добавлен ввод чисел и вывод их суммы и разности
|
|
|
|
|
* 57f1f4f build: добавлен файл проекта
|
|
|
|
|
* e6e2269 code: заготовка программы
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git log --grep 'build'
|
|
|
|
|
commit 57f1f4feaa3d50491f4d4ef26a52bd7b86242561
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 11:07:59 2025 +0300
|
|
|
|
|
|
|
|
|
|
build: добавлен файл проекта
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git log -- project.cbp
|
|
|
|
|
commit 57f1f4feaa3d50491f4d4ef26a52bd7b86242561
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 11:07:59 2025 +0300
|
|
|
|
|
|
|
|
|
|
build: добавлен файл проекта
|
|
|
|
|
|
|
|
|
|
Просмотр коммитов
|
|
|
|
|
Используем команды для просмотра отдельных коммитов(git log –main.cpp/ git log –grep “code: ”)
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)$
|
|
|
|
|
git log --grep 'build:'
|
|
|
|
|
commit 57f1f4feaa3d50491f4d4ef26a52bd7b86242561
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 11:07:59 2025 +0300
|
|
|
|
|
|
|
|
|
|
build: add project file
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)$
|
|
|
|
|
git log -- project.cbp
|
|
|
|
|
commit 57f1f4feaa3d50491f4d4ef26a52bd7b86242561
|
|
|
|
|
Author: Alice (AngelovI) <AngelovI@mpei.ru>
|
|
|
|
|
Date: Mon Mar 24 11:07:59 2025 +0300
|
|
|
|
|
|
|
|
|
|
build: add project file
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(Таким способом мы просмотрели информацию о коммите по измененному файлу и по теме коммита)
|
|
|
|
|
|
|
|
|
|
Далее тремя способами просматриваем информацию о предпоследнем коммите
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git show HEAD
|
|
|
|
|
commit e10fefcdfc9578bf5561d214853dd269e3c7bae5 (HEAD -> main)
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 13:34:38 2025 +0300
|
|
|
|
|
|
|
|
|
|
git: добавлен файл .gitignore для игнорирования каталогов bin и obj
|
|
|
|
|
|
|
|
|
|
diff --git a/.gitignore b/.gitignore
|
|
|
|
|
new file mode 100644
|
|
|
|
|
index 0000000..9d83ebf
|
|
|
|
|
--- /dev/null
|
|
|
|
|
+++ b/.gitignore
|
|
|
|
|
@@ -0,0 +1,3 @@
|
|
|
|
|
+/bin
|
|
|
|
|
+/obj
|
|
|
|
|
+*.layout
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git show main
|
|
|
|
|
commit e10fefcdfc9578bf5561d214853dd269e3c7bae5 (HEAD -> main)
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 13:34:38 2025 +0300
|
|
|
|
|
|
|
|
|
|
git: добавлен файл .gitignore для игнорирования каталогов bin и obj
|
|
|
|
|
|
|
|
|
|
diff --git a/.gitignore b/.gitignore
|
|
|
|
|
new file mode 100644
|
|
|
|
|
index 0000000..9d83ebf
|
|
|
|
|
--- /dev/null
|
|
|
|
|
+++ b/.gitignore
|
|
|
|
|
@@ -0,0 +1,3 @@
|
|
|
|
|
+/bin
|
|
|
|
|
+/obj
|
|
|
|
|
+*.layout
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git show d2e8af
|
|
|
|
|
fatal: ambiguous argument 'd2e8af': unknown revision or path not in the working tree.
|
|
|
|
|
Use '--' to separate paths from revisions, like this:
|
|
|
|
|
'git <command> [<revision>...] -- [<file>...]'
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git show 9d83ebf
|
|
|
|
|
/bin
|
|
|
|
|
/obj
|
|
|
|
|
*.layout
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git show HEAD~1
|
|
|
|
|
commit f35c5833ccc51b116c8ce1836e365319595d6cdf
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 13:25:32 2025 +0300
|
|
|
|
|
|
|
|
|
|
code: добавлен ввод чисел и вывод их суммы и разности
|
|
|
|
|
|
|
|
|
|
diff --git a/main.cpp b/main.cpp
|
|
|
|
|
index b4392ec..eac5055 100644
|
|
|
|
|
--- a/main.cpp
|
|
|
|
|
+++ b/main.cpp
|
|
|
|
|
@@ -4,6 +4,7 @@ using namespace std;
|
|
|
|
|
|
|
|
|
|
int main()
|
|
|
|
|
{
|
|
|
|
|
- cout << "Hello world!" << endl;
|
|
|
|
|
- return 0;
|
|
|
|
|
+ cout << "Enter A and B: ";
|
|
|
|
|
+ int a, b;
|
|
|
|
|
+ cin >> a >> b;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git show main~1
|
|
|
|
|
commit f35c5833ccc51b116c8ce1836e365319595d6cdf
|
|
|
|
|
Author: Alice (StepanovaKY) <StepanovaKY@empei.ru>
|
|
|
|
|
Date: Mon Mar 24 13:25:32 2025 +0300
|
|
|
|
|
|
|
|
|
|
code: добавлен ввод чисел и вывод их суммы и разности
|
|
|
|
|
|
|
|
|
|
diff --git a/main.cpp b/main.cpp
|
|
|
|
|
index b4392ec..eac5055 100644
|
|
|
|
|
--- a/main.cpp
|
|
|
|
|
+++ b/main.cpp
|
|
|
|
|
@@ -4,6 +4,7 @@ using namespace std;
|
|
|
|
|
|
|
|
|
|
int main()
|
|
|
|
|
{
|
|
|
|
|
- cout << "Hello world!" << endl;
|
|
|
|
|
- return 0;
|
|
|
|
|
+ cout << "Enter A and B: ";
|
|
|
|
|
+ int a, b;
|
|
|
|
|
+ cin >> a >> b;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git diff
|
|
|
|
|
diff --git a/main.cpp b/main.cpp
|
|
|
|
|
index eac5055..a2358eb 100644
|
|
|
|
|
--- a/main.cpp
|
|
|
|
|
+++ b/main.cpp
|
|
|
|
|
@@ -7,4 +7,8 @@ int main()
|
|
|
|
|
cout << "Enter A and B: ";
|
|
|
|
|
int a, b;
|
|
|
|
|
cin >> a >> b;
|
|
|
|
|
+ cout << "A + B = " << a + b << '\n';
|
|
|
|
|
+ cout << "A - B = " << a - b << '\n';
|
|
|
|
|
+ cout << "A * B = " << a * b << '\n';
|
|
|
|
|
+
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git diff HEAD~2
|
|
|
|
|
diff --git a/.gitignore b/.gitignore
|
|
|
|
|
new file mode 100644
|
|
|
|
|
index 0000000..9d83ebf
|
|
|
|
|
--- /dev/null
|
|
|
|
|
+++ b/.gitignore
|
|
|
|
|
@@ -0,0 +1,3 @@
|
|
|
|
|
+/bin
|
|
|
|
|
+/obj
|
|
|
|
|
+*.layout
|
|
|
|
|
diff --git a/main.cpp b/main.cpp
|
|
|
|
|
index b4392ec..a2358eb 100644
|
|
|
|
|
--- a/main.cpp
|
|
|
|
|
+++ b/main.cpp
|
|
|
|
|
@@ -4,6 +4,11 @@ using namespace std;
|
|
|
|
|
|
|
|
|
|
int main()
|
|
|
|
|
{
|
|
|
|
|
- cout << "Hello world!" << endl;
|
|
|
|
|
- return 0;
|
|
|
|
|
+ cout << "Enter A and B: ";
|
|
|
|
|
+ int a, b;
|
|
|
|
|
+ cin >> a >> b;
|
|
|
|
|
+ cout << "A + B = " << a + b << '\n';
|
|
|
|
|
|
|
|
|
|
Добавим изменения в рабочую копию и посмотрим их с помощью команды git diff
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git diff
|
|
|
|
|
diff --git a/main.cpp b/main.cpp
|
|
|
|
|
index b4392ec..a2358eb 100644
|
|
|
|
|
--- a/main.cpp
|
|
|
|
|
+++ b/main.cpp
|
|
|
|
|
@@ -8,6 +8,7 @@ int main()
|
|
|
|
|
int a, b;
|
|
|
|
|
cin >> a >> b;
|
|
|
|
|
cout << "A + B = " << a + b << '\n'
|
|
|
|
|
- << "A - B = " << a - b << '\n';
|
|
|
|
|
+ << "A - B = " << a - b << '\n'
|
|
|
|
|
+ << "A * B = " << a * b << '\n';
|
|
|
|
|
return 0;
|
|
|
|
|
}
|
|
|
|
|
В качестве первой стр. мы видим входные данные команды для сравнения файлов
|
|
|
|
|
Далее идет заголовок с легендой изменения, место измененного кода и измененная функция
|
|
|
|
|
На след. строке идут строки вокруг измененной части, удаленные и добавленные строки
|
|
|
|
|
|
|
|
|
|
Откат изменений
|
|
|
|
|
Вносим изменения в код, а потом откатываем их до состояния в опр. коммите с помощью команды git reset
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git commit -m 'вывод произведения'
|
|
|
|
|
[main c41ed97] вывод произведения
|
|
|
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git reset --hard HEAD~1
|
|
|
|
|
HEAD is now at 1dc38fd git: игнорирование бинарных файлов
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git checkout HEAD -- main.cpp
|
|
|
|
|
|
|
|
|
|
Обмен кодом через удаленное хранилище
|
|
|
|
|
Обмен кодом через удалённое хранилище. Для загрузки данных в репозитарий GitHub будет использоваться протокол SSH. Поэтому для обмена данными с сервером нужно сгенерировать пару из открытого и закрытого ключей.
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ ssh-keygen
|
|
|
|
|
Generating public/private ed25519 key pair.
|
|
|
|
|
Enter file in which to save the key (/c/Users/rybin/.ssh/id_ed25519):
|
|
|
|
|
Created directory '/c/Users/rybin/.ssh'.
|
|
|
|
|
Enter passphrase for "/c/Users/rybin/.ssh/id_ed25519" (empty for no passphrase):
|
|
|
|
|
Enter same passphrase again:
|
|
|
|
|
Your identification has been saved in /c/Users/rybin/.ssh/id_ed25519
|
|
|
|
|
Your public key has been saved in /c/Users/rybin/.ssh/id_ed25519.pub
|
|
|
|
|
The key fingerprint is:
|
|
|
|
|
SHA256:YsaIzPpwHTaBQqBGQam9BykmtgY0s12248qTX1MJ7CE rybin@Bomba
|
|
|
|
|
The key's randomart image is:
|
|
|
|
|
+--[ED25519 256]--+
|
|
|
|
|
|+=o |
|
|
|
|
|
|+= . o. |
|
|
|
|
|
|=o*.+E.+ |
|
|
|
|
|
|*B+o *o o . |
|
|
|
|
|
|=.=o* *.So |
|
|
|
|
|
| +.o.* .. |
|
|
|
|
|
|+ o.+ o |
|
|
|
|
|
| + = . . |
|
|
|
|
|
| . o. |
|
|
|
|
|
+----[SHA256]-----+
|
|
|
|
|
|
|
|
|
|
Также после этого отображаются уникальные данные для ключа. Поскольку в работе вводить пароль при каждом использовании ключа может быть неудобно, можно использовать программу-агент, которую достаточно запустить перед началом работы:
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ eval $(ssh-agent -s)
|
|
|
|
|
Agent pid 760
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ ssh-add
|
|
|
|
|
Enter passphrase for /c/Users/rybin/.ssh/id_ed25519:
|
|
|
|
|
Identity added: /c/Users/rybin/.ssh/id_ed25519 (rybin@Bomba)
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ cat ~/.ssh/id_ed25519.pub
|
|
|
|
|
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAQ2E0GWYIDA5NLS58pgx1ol7mBFIA2NC2Bs06kyzQmG rybin@Bomba
|
|
|
|
|
|
|
|
|
|
Затем в настройках аккаунта GitHub нужно добавить публичный ключ, который по умолчанию записывается в файл id_rsa.pub.
|
|
|
|
|
Теперь добавим репозитарий на который будем загружать хранилище git, и загрузим хранилище git на GitHub с помощью команды git push.
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git remote add origin git@uit.mpei.ru:StepanovaKY/project.git
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git push -u origin main
|
|
|
|
|
Enumerating objects: 15, done.
|
|
|
|
|
Counting objects: 100% (15/15), done.
|
|
|
|
|
Delta compression using up to 12 threads
|
|
|
|
|
Compressing objects: 100% (13/13), done.
|
|
|
|
|
Writing objects: 100% (15/15), 1.98 KiB | 1015.00 KiB/s, done.
|
|
|
|
|
Total 15 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
|
|
|
remote: . Processing 1 references
|
|
|
|
|
remote: Processed 1 references in total
|
|
|
|
|
To uit.mpei.ru:StepanovaKY/cs-lab02.git
|
|
|
|
|
* [new branch] main -> main
|
|
|
|
|
branch 'main' set up to track 'origin/main'.
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git remote -v
|
|
|
|
|
origin git@uit.mpei.ru:StepanovaKY/cs-lab02.git (fetch)
|
|
|
|
|
origin git@uit.mpei.ru:StepanovaKY/cs-lab02.git (push)
|
|
|
|
|
|
|
|
|
|
К работе присоединяется боб. Клонируем репозитарий с помощью git clone.
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/bob
|
|
|
|
|
$ git clone git@uit.mpei.ru:StepanovaKY/cs-lab02.git project
|
|
|
|
|
Cloning into 'project'...
|
|
|
|
|
remote: Enumerating objects: 15, done.
|
|
|
|
|
remote: Counting objects: 100% (15/15), done.
|
|
|
|
|
remote: Compressing objects: 100% (12/12), done.
|
|
|
|
|
remote: Total 15 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
|
|
|
Receiving objects: 100% (15/15), done.
|
|
|
|
|
Resolving deltas: 100% (1/1), done.
|
|
|
|
|
|
|
|
|
|
Настроим хранилище боба
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/bob/project (main)
|
|
|
|
|
$ git config user.name 'Bob (StepanovaKY)'
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/bob/project (main)
|
|
|
|
|
$ git config user.email 'StepanovaKY@mpei.ru'
|
|
|
|
|
|
|
|
|
|
Боб добавляет новый коммит, опережающий версию на сервере, и загружает его на GitHub.
|
|
|
|
|
Вантуз@DESKTOP-RJ2P0PB MINGW64 ~/Desktop/laba02/bob/project (main)
|
|
|
|
|
$ git add main.cpp
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/bob/project (main)
|
|
|
|
|
$ git commit -m 'code: вывод произведения'
|
|
|
|
|
[main b0667fd] code: вывод произведения
|
|
|
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 /c/Users/Rybin/OneDrive/Desktop/lab02/bob/project (main)
|
|
|
|
|
$ git push
|
|
|
|
|
Enter passphrase for key '/c/Users/Rybin/.ssh/id_rsa':
|
|
|
|
|
Enumerating objects: 5, done.
|
|
|
|
|
Counting objects: 100% (5/5), done.
|
|
|
|
|
Delta compression using up to 12 threads
|
|
|
|
|
Compressing objects: 100% (3/3), done.
|
|
|
|
|
Writing objects: 100% (3/3), 384 bytes | 384.00 KiB/s, done.
|
|
|
|
|
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
|
|
|
remote: . Processing 1 references
|
|
|
|
|
remote: Processed 1 references in total
|
|
|
|
|
To uit.mpei.ru:StepanovaKY/cs-lab02.git
|
|
|
|
|
1dc38fd..b0667fd main -> main
|
|
|
|
|
|
|
|
|
|
Обновляем версию программы у Алисы. Для этого загружаем загрузку изменений с помощью git fetch. А затем переносим ветку main на скачанную версию с помощью git pull (который, вообще говоря, все равно вызывает git fetch, поэтому его ручной вызов не обязателен).
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git fetch
|
|
|
|
|
remote: Enumerating objects: 5, done.
|
|
|
|
|
remote: Counting objects: 100% (5/5), done.
|
|
|
|
|
remote: Compressing objects: 100% (3/3), done.
|
|
|
|
|
remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
|
|
|
Unpacking objects: 100% (3/3), 364 bytes | 24.00 KiB/s, done.
|
|
|
|
|
From uit.mpei.ru:StepanovaKY/cs-lab02
|
|
|
|
|
1dc38fd..b0667fd main -> origin/main
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git log --oneline --decorate --all --graph
|
|
|
|
|
* b0667fd (origin/main) code: вывод произведения
|
|
|
|
|
* 1dc38fd (HEAD -> main) git: игнорирование бинарных файлов
|
|
|
|
|
* 62b8365 code: вывод разности
|
|
|
|
|
* 3b9353a code: вывод суммы
|
|
|
|
|
* 9ca7d49 build: add project file
|
|
|
|
|
* 9f4438c code: заготовка программы
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git pull --ff-only
|
|
|
|
|
Updating 1dc38fd..b0667fd
|
|
|
|
|
Fast-forward
|
|
|
|
|
main.cpp | 3 ++-
|
|
|
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
|
|
|
|
|
|
Далее Алиса вносит новое изменение, а Боб его скачивает.
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git add main.cpp
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git commit -m 'code: вывод деления'
|
|
|
|
|
[main a959899] code: вывод деления
|
|
|
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git push
|
|
|
|
|
Enumerating objects: 5, done.
|
|
|
|
|
Counting objects: 100% (5/5), done.
|
|
|
|
|
Delta compression using up to 12 threads
|
|
|
|
|
Compressing objects: 100% (3/3), done.
|
|
|
|
|
Writing objects: 100% (3/3), 396 bytes | 396.00 KiB/s, done.
|
|
|
|
|
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
|
|
|
remote: . Processing 1 references
|
|
|
|
|
remote: Processed 1 references in total
|
|
|
|
|
To uit.mpei.ru:StepanovaKY/cs-lab02.git
|
|
|
|
|
b0667fd..a959899 main -> main
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/bob/project (main)
|
|
|
|
|
$ git fetch
|
|
|
|
|
Enter passphrase for key '/c/Users/Вантуз/.ssh/id_rsa':
|
|
|
|
|
remote: Enumerating objects: 5, done.
|
|
|
|
|
remote: Counting objects: 100% (5/5), done.
|
|
|
|
|
remote: Compressing objects: 100% (3/3), done.
|
|
|
|
|
remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
|
|
|
Unpacking objects: 100% (3/3), 376 bytes | 18.00 KiB/s, done.
|
|
|
|
|
From uit.mpei.ru:StepanovaKY/cs-lab02
|
|
|
|
|
b0667fd..a959899 main -> origin/main
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/bob/project (main)
|
|
|
|
|
$ git pull --ff-only
|
|
|
|
|
Enter passphrase for key '/c/Users/Вантуз/.ssh/id_rsa':
|
|
|
|
|
Updating b0667fd..a959899
|
|
|
|
|
Fast-forward
|
|
|
|
|
main.cpp | 3 ++-
|
|
|
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Теперь Алиса и Боб добавляют в программу печать максимума и минимума соответственно, а затем пробуют загрузить изменения на репозитарий на сервере.
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git add main.cpp
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git commit -m 'code: вывод максимума'
|
|
|
|
|
[main a262594] code: вывод максимума
|
|
|
|
|
1 file changed, 2 insertions(+)
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git push
|
|
|
|
|
Enumerating objects: 5, done.
|
|
|
|
|
Counting objects: 100% (5/5), done.
|
|
|
|
|
Delta compression using up to 12 threads
|
|
|
|
|
Compressing objects: 100% (3/3), done.
|
|
|
|
|
Writing objects: 100% (3/3), 434 bytes | 434.00 KiB/s, done.
|
|
|
|
|
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
|
|
|
remote: . Processing 1 references
|
|
|
|
|
remote: Processed 1 references in total
|
|
|
|
|
To uit.mpei.ru:StepanovaKY/cs-lab02.git
|
|
|
|
|
a959899..a262594 main -> main
|
|
|
|
|
|
|
|
|
|
(боб)
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/bob/project (main)
|
|
|
|
|
$ git add main.cpp
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/bob/project (main)
|
|
|
|
|
$ git commit -m 'code: вывод минимума'
|
|
|
|
|
[main 38a334c] code: вывод минимума
|
|
|
|
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/bob/project (main)
|
|
|
|
|
$ git push
|
|
|
|
|
Enter passphrase for key '/c/Users/rybin/.ssh/id_rsa':
|
|
|
|
|
To uit.mpei.ru:AngelovI/cs-lab02.git
|
|
|
|
|
! [rejected] main -> main (non-fast-forward)
|
|
|
|
|
error: failed to push some refs to 'uit.mpei.ru:StepanovaKY/cs-lab02.git'
|
|
|
|
|
hint: Updates were rejected because the tip of your current branch is behind
|
|
|
|
|
hint: its remote counterpart. If you want to integrate the remote changes,
|
|
|
|
|
hint: use 'git pull' before pushing again.
|
|
|
|
|
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
|
|
|
|
|
|
|
|
|
|
(Однако загрузить на сервер изменения получается только у Алисы потому, что Боб затем пытается загрузить версию, основанную на более старом коммите, чем самый новый коммит в репозитарии GitHub.)
|
|
|
|
|
|
|
|
|
|
Загрузим версию с сервера
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/bob/project (main)
|
|
|
|
|
$ git fetch
|
|
|
|
|
Enter passphrase for key '/c/Users/rybin/.ssh/id_rsa':
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/bob/project (main)
|
|
|
|
|
$ git log --oneline --decorate --all --graph
|
|
|
|
|
* 751cb56 (HEAD -> main) code: вывод минимума
|
|
|
|
|
| * a262594 (origin/main, origin/HEAD) code: вывод максимума
|
|
|
|
|
|/
|
|
|
|
|
* a959899 code: вывод деления
|
|
|
|
|
* b0667fd code: вывод произведения
|
|
|
|
|
* 1dc38fd git: игнорирование бинарных файлов
|
|
|
|
|
* 62b8365 code: вывод разности
|
|
|
|
|
* 3b9353a code: вывод суммы
|
|
|
|
|
* 9ca7d49 build: add project file
|
|
|
|
|
* 9f4438c code: заготовка программы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(Ветка main раздвоилась.)
|
|
|
|
|
Объединим коммиты Боба и Алисы, поместив коммит Боба выше с помощью комманды git rebase.
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/bob/project (main)
|
|
|
|
|
$ git rebase origin/main
|
|
|
|
|
Auto-merging main.cpp
|
|
|
|
|
CONFLICT (content): Merge conflict in main.cpp
|
|
|
|
|
error: could not apply 751cb56... code: вывод минимума
|
|
|
|
|
hint: Resolve all conflicts manually, mark them as resolved with
|
|
|
|
|
hint: "git add/rm <conflicted_files>", then run "git rebase --continue".
|
|
|
|
|
hint: You can instead skip this commit: run "git rebase --skip".
|
|
|
|
|
hint: To abort and get back to the state before "git rebase", run "git rebase --abort".
|
|
|
|
|
Could not apply 751cb56... code: вывод минимума
|
|
|
|
|
|
|
|
|
|
Комманда завершается с ошибкой из-за конфликта в файле с кодом main.cpp. Производный файл от файла Алисы и Боба записывается в рабочую копию с помеченными метками конфликта. Убираем метки конфликта, и дорабатываем код так, чтобы программа компилировалась и работала. Затем загружаем изменения в индекс и продолжаем операцию git rebase, с помощью флага –continue.
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/bob/project (main|REBASE 1/1)
|
|
|
|
|
$ git add main.cpp
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/bob/project (main|REBASE 1/1)
|
|
|
|
|
|
|
|
|
|
$ git rebase --continue
|
|
|
|
|
[detached HEAD 9dc1bfc] code: вывод минимума
|
|
|
|
|
1 file changed, 6 insertions(+)
|
|
|
|
|
Successfully rebased and updated refs/heads/main.
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/bob/project (main)
|
|
|
|
|
$ git log --oneline --decorate --all --graph
|
|
|
|
|
* 9dc1bfc (HEAD -> main) code: вывод минимума
|
|
|
|
|
* a262594 (origin/main, origin/HEAD) code: вывод максимума
|
|
|
|
|
* a959899 code: вывод деления
|
|
|
|
|
* b0667fd code: вывод произведения
|
|
|
|
|
* 1dc38fd git: игнорирование бинарных файлов
|
|
|
|
|
* 62b8365 code: вывод разности
|
|
|
|
|
* 3b9353a code: вывод суммы
|
|
|
|
|
* 9ca7d49 build: add project file
|
|
|
|
|
* 9f4438c code: заготовка программы
|
|
|
|
|
|
|
|
|
|
(Получили желаемый результат)
|
|
|
|
|
Отправим изменения на сервер.
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/bob/project (main)
|
|
|
|
|
$ git push
|
|
|
|
|
Enter passphrase for key '/c/Users/Вантуз/.ssh/id_rsa':
|
|
|
|
|
Enumerating objects: 5, done.
|
|
|
|
|
Counting objects: 100% (5/5), done.
|
|
|
|
|
Delta compression using up to 12 threads
|
|
|
|
|
Compressing objects: 100% (3/3), done.
|
|
|
|
|
Writing objects: 100% (3/3), 438 bytes | 438.00 KiB/s, done.
|
|
|
|
|
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
|
|
|
remote: . Processing 1 references
|
|
|
|
|
remote: Processed 1 references in total
|
|
|
|
|
To uit.mpei.ru:StepanovaKY/cs-lab02.git
|
|
|
|
|
a262594..9dc1bfc main -> main
|
|
|
|
|
|
|
|
|
|
В это время Алиса создаёт новую ветку (с помощью комманды git branch) для изменения типа переменных на вещественный. Начинает она с коммита, когда добавлена печать максимума.
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git branch double
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git checkout double
|
|
|
|
|
Switched to branch 'double'
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (double)
|
|
|
|
|
$ git add main.cpp
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (double)
|
|
|
|
|
$ git commit -m 'code: изменение типа переменных'
|
|
|
|
|
[double 04a65b4] code: изменение типа переменных
|
|
|
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
|
|
|
|
|
|
Затем переключается на ветку main. И синхронизирует её
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (double)
|
|
|
|
|
$ git checkout main
|
|
|
|
|
Switched to branch 'main'
|
|
|
|
|
Your branch is up to date with 'origin/main'.
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git fetch
|
|
|
|
|
remote: Enumerating objects: 5, done.
|
|
|
|
|
remote: Counting objects: 100% (5/5), done.
|
|
|
|
|
remote: Compressing objects: 100% (3/3), done.
|
|
|
|
|
remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
|
|
|
Unpacking objects: 100% (3/3), 418 bytes | 41.00 KiB/s, done.
|
|
|
|
|
From uit.mpei.ru:StepanovaKY/cs-lab02
|
|
|
|
|
a262594..9dc1bfc main -> origin/main
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git log --oneline --decorate --all --graph
|
|
|
|
|
* 04a65b4 (double) code: изменение типа переменных
|
|
|
|
|
| * 9dc1bfc (origin/main) code: вывод минимума
|
|
|
|
|
|/
|
|
|
|
|
* a262594 (HEAD -> main) code: вывод максимума
|
|
|
|
|
* a959899 code: вывод деления
|
|
|
|
|
* b0667fd code: вывод произведения
|
|
|
|
|
* 1dc38fd git: игнорирование бинарных файлов
|
|
|
|
|
* 62b8365 code: вывод разности
|
|
|
|
|
* 3b9353a code: вывод суммы
|
|
|
|
|
* 9ca7d49 build: add project file
|
|
|
|
|
* 9f4438c code: заготовка программы
|
|
|
|
|
|
|
|
|
|
(Получаем одновременно две ветки)
|
|
|
|
|
Объединяем их с помощью комманды git merge. Вносим последние изменения и загружаем на GitHub.
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git merge double
|
|
|
|
|
|
|
|
|
|
Auto-merging main.cpp
|
|
|
|
|
Merge made by the 'ort' strategy.
|
|
|
|
|
main.cpp | 2 +-
|
|
|
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
|
|
|
|
|
|
rybin@Bomba MINGW64 ~/OneDrive/Desktop/lab02/alice/project (main)
|
|
|
|
|
$ git push
|
|
|
|
|
Enumerating objects: 10, done.
|
|
|
|
|
Counting objects: 100% (10/10), done.
|
|
|
|
|
Delta compression using up to 12 threads
|
|
|
|
|
Compressing objects: 100% (6/6), done.
|
|
|
|
|
Writing objects: 100% (6/6), 831 bytes | 831.00 KiB/s, done.
|
|
|
|
|
Total 6 (delta 2), reused 0 (delta 0), pack-reused 0
|
|
|
|
|
remote: . Processing 1 references
|
|
|
|
|
remote: Processed 1 references in total
|
|
|
|
|
To uit.mpei.ru:StepanovaKY/cs-lab02.git
|
|
|
|
|
9dc1bfc..cfe757c main -> main
|
|
|
|
|
|
|
|
|
|
|