Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
TekotovaVA 86de7919e4
отчет
2 лет назад
alice отчет 2 лет назад
readme.txt добавлен файл с отчетом 2 лет назад

readme.txt

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

Отчет по лабораторной работе № 2 "Система контроля версий Git"


Выполнил: Текотова В. А.
Группа: А-03-22
Проверил:

Примечание: работа выполнялась на Windows.

1. Создала на рабочем столе каталог lab02 и запустил в нем Git Bash, приглашение:

User@DellVostro15 MINGW64 ~/Desktop/lab02
$


2. Просмотрела файлы в рабочем каталоге командой "ls" --- пусто:

User@DellVostro15 MINGW64 ~/Desktop/lab02
$ ls

3. Создала каталоги Алисы и Боба, создала каталог "project",
изучила команду "cd" в процессе:
User@DellVostro15 MINGW64 ~/Desktop/lab2
$ mkdir alice
mkdir bob

User@DellVostro15 MINGW64 ~/Desktop/lab2
$ cd alice

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice
$ mkdir project

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice
$ cd project

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project
$ cd ..

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice
$ cd project

4. Инициализировала репозитарий:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project
$ git init
Initialized empty Git repository in C:/Users/User/Desktop/lab2/alice/project/.git/

//У меня имя ветки по умолчанию не настроено. Git создал ветку под названием master, что видно в приглашении терминала.
//Поменяю имя ветки на main командой git branch -m main:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (master)
$ git branch -m main

5. Настроила репозитарий Алисы, чтобы коммиты были от ее имени:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git config user.name 'Alice (TekotovaVA)'
git config user.email 'TekotovaVA@mpei.ru'

6. Просмотрела состояние рабочей копии:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git status
On branch main

No commits yet

Untracked files:
(use "git add <file>..." to include in what will be committed)
project.cpp
project.sln
project.vcxproj
project.vcxproj.filters
project.vcxproj.user
x64/

nothing added to commit but untracked files present (use "git add" to track)
//
On branch main - ссылка HEAD указывает на ветку main
No commits yet - говорит о том, что еще не было создано коммитов
Untracked files:
(use "git add <file>..." to include in what will be committed)
project.cpp
project.sln
project.vcxproj
project.vcxproj.filters
project.vcxproj.user
x64/ - показывает не отслеживаемые файлы в хранилище git, и подсказывает как их добавить
nothing added to commit but untracked files present (use "git add" to track) - говорит о том, что нет добавленных (отслеживаемых) файлов, которые можно будет закоммитить


//Занесла под Git файл main.cpp (в набор изменений)
User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git add project.cpp

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git status
On branch main

No commits yet

Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: project.cpp Появилась строка с файлами в индексе, стоящими в очереди на коммит (так же подсказка для удаления)

Untracked files:
(use "git add <file>..." to include in what will be committed)
project.sln
project.vcxproj
project.vcxproj.filters
project.vcxproj.user
x64/

//Выполнила коммит с файлом main.cpp и коротким сообщением:
User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -m 'code: заготовка программы'
[main (root-commit) 7c852bc] code: заготовка программы
1 file changed, 6 insertions(+)
create mode 100644 project.cpp

7. Добавила файл project.cbp в индекс и сделала коммит с ним, тема — build.
Сообщение после темы по смыслу изменений - «добавлен файл проекта»:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git add project.sln

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -m 'build: добавлен файл проекта'
[main de24086] build: добавлен файл проекта
1 file changed, 31 insertions(+)
create mode 100644 project.sln

8. Заменила тело функции main() на ввод двух чисел и посмотрела состояние репозитария:

User@DellVostro15 MINGW64 ~/Desktop/lab2/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: project.cpp //После добавления в программу ввода 2х чисел появилась строка о том, что файл main.cpp был изменен (modified: main.cpp)

Untracked files:
(use "git add <file>..." to include in what will be committed)
.vs/
project.vcxproj
project.vcxproj.filters
project.vcxproj.user
x64/

no changes added to commit (use "git add" and/or "git commit -a")

9. закоммитила изменения:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git add project.cpp
git commit -m "добавлен ввод двух чисел"
[main c1b8217] добавлен ввод двух чисел
1 file changed, 4 insertions(+), 1 deletion(-)

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git add -u
git commit -m "добавлен вывод суммы"
[main 768e54a] добавлен вывод суммы
1 file changed, 1 insertion(+)

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -a -m "добавлен вывод разности"
[main 6fce53c] добавлен вывод разности
1 file changed, 2 insertions(+), 1 deletion(-)

10. С помощью команды git log и различных ее опций просматриваем журнал коммитов:

//git log --oneline --decorate показывает коммиты компактно (--oneline), а также показывает ссылки, концы веток и тэги (--decorate):
User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log --oneline --decorate
6fce53c (HEAD -> main) добавлен вывод разности
768e54a добавлен вывод суммы
c1b8217 добавлен ввод двух чисел
de24086 build: добавлен файл проекта
7c852bc code: заготовка программы

// Просмотрела информацию о коммите по измененному файлу и по теме коммита (используя команды для просмотра отдельных коммитов git log -- project.cbp и git log --grep "build:"):

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log --grep "build:"
commit de240868ae5b97d0911a2c2b830731df26274923
Author: Alice (TekotovaVA) <TekotovaVA@mpei.ru>
Date: Fri Apr 14 18:24:06 2023 +0300

build: добавлен файл проекта

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log -- project.cpp
commit 6fce53cac19793ebf801477aa1fb70893ba87032 (HEAD -> main)
Author: Alice (TekotovaVA) <TekotovaVA@mpei.ru>
Date: Fri Apr 14 18:28:34 2023 +0300

добавлен вывод разности

commit 768e54a5c2247625438b58559d5e62e1c93b7b07
Author: Alice (TekotovaVA) <TekotovaVA@mpei.ru>
Date: Fri Apr 14 18:27:03 2023 +0300

добавлен вывод суммы

commit c1b8217535f23c8eadf8cb347aadf7e2a48ca069
Author: Alice (TekotovaVA) <TekotovaVA@mpei.ru>
Date: Fri Apr 14 18:25:57 2023 +0300

добавлен ввод двух чисел

commit 7c852bc4883fb99f29f3541ffb0af3db2a453da4
Author: Alice (TekotovaVA) <TekotovaVA@mpei.ru>
Date: Fri Apr 14 18:23:24 2023 +0300

code: заготовка программы

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log -- project.sln
commit de240868ae5b97d0911a2c2b830731df26274923 - показывается хэш коммита, по которому можно потом найти этот коммит
Author: Alice (TekotovaVA) <TekotovaVA@mpei.ru> - записан автор, внесший этот коммит
Date: Fri Apr 14 18:24:06 2023 +0300 - время создания коммита

build: добавлен файл проекта - комментарий к коммиту

// Тремя способами просмотрела информацию о предпоследнем коммите (результат всех способов один, поэтому в отчете не повторялся):

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git show HEAD~1
commit 768e54a5c2247625438b58559d5e62e1c93b7b07
Author: Alice (TekotovaVA) <TekotovaVA@mpei.ru>
Date: Fri Apr 14 18:27:03 2023 +0300

добавлен вывод суммы

diff --git a/project.cpp b/project.cpp
index 8138d57..39dd5ed 100644
--- a/project.cpp
+++ b/project.cpp
@@ -6,4 +6,5 @@ int main()
cout << "Enter A and B: ";
int a, b;
cin >> a >> b;
+ cout << "A + B = " << a + b << '\n';
}


User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git show 768e54a
commit 768e54a5c2247625438b58559d5e62e1c93b7b07
Author: Alice (TekotovaVA) <TekotovaVA@mpei.ru>
Date: Fri Apr 14 18:27:03 2023 +0300

добавлен вывод суммы

diff --git a/project.cpp b/project.cpp
index 8138d57..39dd5ed 100644
--- a/project.cpp
+++ b/project.cpp
@@ -6,4 +6,5 @@ int main()
cout << "Enter A and B: ";
int a, b;
cin >> a >> b;
+ cout << "A + B = " << a + b << '\n';
}

//Добавиа изменения в рабочую копию и посмотрела их с помощью команды git diff:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git diff
diff --git a/project.cpp b/project.cpp
index a1ab3b9..90aa5b6 100644
--- a/project.cpp
+++ b/project.cpp
@@ -7,5 +7,6 @@ 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';
}


//Просмотрела изменения между самым первым коммитом и коммитом, добавляющим вывод разности:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git diff 6fce53c 7c852bc
diff --git a/project.cpp b/project.cpp
index a1ab3b9..79080bd 100644
--- a/project.cpp
+++ b/project.cpp
@@ -1,11 +1,6 @@
#include <iostream>
-using namespace std;

int main()
{
- cout << "Enter A and B: ";
- int a, b;
- cin >> a >> b;
- cout << "A + B = " << a + b << '\n'
- << "A - B = " << a - b << '\n';
+ std::cout << "Hello World!\n";
}
diff --git a/project.sln b/project.sln
deleted file mode 100644
index b715005..0000000
--- a/project.sln
+++ /dev/null
@@ -1,31 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 17
-VisualStudioVersion = 17.3.32825.248
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "project", "project.vcxproj-B7D4-1F35D21C71DF}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Debug|x64 = Debug|x64
- Debug|x86 = Debug|x86
- Release|x64 = Release|x64
- Release|x86 = Release|x86
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {4DD4288B-28AA-451A-B7D4-1F35D21C71DF}.Debug|x64.ActiveCfg = Deb
- {4DD4288B-28AA-451A-B7D4-1F35D21C71DF}.Debug|x64.Build.0 = Debug
- {4DD4288B-28AA-451A-B7D4-1F35D21C71DF}.Debug|x86.ActiveCfg = Deb
- {4DD4288B-28AA-451A-B7D4-1F35D21C71DF}.Debug|x86.Build.0 = Debug
- {4DD4288B-28AA-451A-B7D4-1F35D21C71DF}.Release|x64.ActiveCfg = R
- {4DD4288B-28AA-451A-B7D4-1F35D21C71DF}.Release|x64.Build.0 = Rel
- {4DD4288B-28AA-451A-B7D4-1F35D21C71DF}.Release|x86.ActiveCfg = R
- {4DD4288B-28AA-451A-B7D4-1F35D21C71DF}.Release|x86.Build.0 = Rel
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
- GlobalSection(ExtensibilityGlobals) = postSolution
- SolutionGuid = {9384C0E9-0581-42F6-954A-09E46DAA85FC}
- EndGlobalSection
-EndGlobal

11. Закоммитила изменения в рабочей копии (вывод произведения) и откатила этот коммит, то есть вернулась к предыдущему:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git add project.cpp

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -m "добавлен вывод произведения"
[main e17aa47] добавлен вывод произведения
1 file changed, 2 insertions(+), 1 deletion(-)

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git reset --hard HEAD~1
HEAD is now at 6fce53c добавлен вывод разности

//Добавила над функцией main() комментарий: // you may type whatever you want. Убрала изменения в main.cpp откатив этот файл к состоянию в последнем коммите (HEAD):

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git checkout HEAD -- project.cpp

12.Обмен кодом через удалённое хранилище.
Для загрузки данных в репозитарий GitHub будет использоваться протокол SSH. Поэтому для обмена данными с сервером нужно сгенерировать пару из открытого и закрытого ключей:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/User/.ssh/id_rsa):
/c/Users/User/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/User/.ssh/id_rsa
Your public key has been saved in /c/Users/User/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:z3x3FA2ktQy7SCM5FtiXVjhh386pkkkM3NLBPdrr0Eo User@DellVostro15
The key's randomart image is:
+---[RSA 3072]----+
| o..+*o.+ |
| ...*BooB o.|
| Oo=++.+..|
| . B.o.+ ..|
| S +...+ .|
| =Eoo. . |
| .B+o . .|
| .o.. . |
| |
+----[SHA256]-----+

//Также после этого отображаются уникальные данные для ключа.
Поскольку в работе вводить пароль при каждом использовании ключа может быть неудобно, можно использовать программу-агент, которую достаточно запустить перед началом работы:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ eval $(ssh-agent -s)
Agent pid 2809

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ ssh-add
Identity added: /c/Users/User/.ssh/id_rsa (User@DellVostro15)

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCboejwzyRjOHGGs7BFxikdoIJwt95U2P3Nk69qTB0jUPy8cnFlDMMK53+eEIH5REsboCY1lBz5+1ykqW3T2exwxwk609aVIYU2RfG2NEL0dDkzWttHxeR4PmO9v/01g0DYQq1LfwVjB5KcR26udMIV3aU7YKv9ENuFnxNuCd8EfJo0xwmL7MfXcjo/Rg7sq2wWQvMFugddBgKQvajs7/RFMHPDUg6MB5SiZ7EzsgHNVTtRarKAeAaCaS5QHC57prQR1HSKsGEdoAmROl51UzHj3m9egPPWVICR/BmyXBXAbLMM9ZkruUugMpF4pdy1zx9YY8PJqoE9Gmf9s2ooW+rqpkhzy1g45qn7/X/GN9PfmvTMRNC2fbPUwD72DXdIQ23Px2C2/BL/jVXU= User@DellVostro15

//Затем в настройках аккаунта GitHub нужно добавить публичный ключ, который по умолчанию записывается в файл id_rsa.pub.
Теперь добавим репозитарий на который будем загружать хранилище git, и загрузим хранилище git на GitHub с помощью команды git push:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git remote add origin git@uit.mpei.ru:TekotovaVA/cs-lab02.git

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git push -u origin main
Enumerating objects: 15, done.
Counting objects: 100% (15/15), done.
Delta compression using up to 8 threads
Compressing objects: 100% (14/14), done.
Writing objects: 100% (15/15), 2.04 KiB | 522.00 KiB/s, done.
Total 15 (delta 2), reused 0 (delta 0), pack-reused 0
remote: . Processing 1 references
remote: Processed 1 references in total
To uit.mpei.ru:TekotovaVA/cs-lab02.git
* [new branch] main -> main
branch 'main' set up to track 'origin/main'.

//К работе присоединяется боб. Клонировала репозитарий с помощью git clone:

User@DellVostro15 MINGW64 ~/Desktop/lab2
$ cd bob

User@DellVostro15 MINGW64 ~/Desktop/lab2/bob
$ git clone git@uit.mpei.ru:TekotovaVA/cs-lab02.git project
Cloning into 'project'...
remote: Enumerating objects: 15, done.
remote: Counting objects: 100% (15/15), done.
remote: Compressing objects: 100% (14/14), done.
remote: Total 15 (delta 2), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (15/15), done.
Resolving deltas: 100% (2/2), done.

User@DellVostro15 MINGW64 ~/Desktop/lab2/bob
$ cd project

//Настроила хранилище Боба:

User@DellVostro15 MINGW64 ~/Desktop/lab2/bob/project (main)
$ git config user.name 'Bob (TekotovaVA)'
git config user.email 'TekotovaVA@mpei.ru'

//Боб добавляет новый коммит и загружает его на GitHub:

User@DellVostro15 MINGW64 ~/Desktop/lab2/bob/project (main)
$ git add project.cpp

User@DellVostro15 MINGW64 ~/Desktop/lab2/bob/project (main)
$ git commit -m 'добавлен вывод произведения'
[main e406c37] добавлен вывод произведения
1 file changed, 2 insertions(+), 1 deletion(-)

User@DellVostro15 MINGW64 ~/Desktop/lab2/bob/project (main)
$ git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 382 bytes | 382.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:TekotovaVA/cs-lab02.git
6fce53c..e406c37 main -> main

//Обновила версию программы у Алисы. Для этого загрузила загрузку изменений с помощью git fetch. А затем перенесла ветку main на скачанную версию с помощью git pull:

User@DellVostro15 MINGW64 ~/Desktop/lab2/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), 362 bytes | 72.00 KiB/s, done.
From uit.mpei.ru:TekotovaVA/cs-lab02
6fce53c..e406c37 main -> origin/main

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log --oneline --decorate --all --graph
* e406c37 (origin/main) добавлен вывод произведения
* 6fce53c (HEAD -> main) добавлен вывод разности
* 768e54a добавлен вывод суммы
* c1b8217 добавлен ввод двух чисел
* de24086 build: добавлен файл проекта
* 7c852bc code: заготовка программы

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git pull --ff-only
Updating 6fce53c..e406c37
Fast-forward
project.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

//Алиса вносит новое изменение, а Боб его скачивает:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git add project.cpp

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -m 'добавлен вывод деления'
[main 27bf76e] добавлен вывод деления
1 file changed, 2 insertions(+), 1 deletion(-)

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 374 bytes | 374.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:TekotovaVA/cs-lab02.git
e406c37..27bf76e main -> main

User@DellVostro15 MINGW64 ~/Desktop/lab2/bob/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), 354 bytes | 20.00 KiB/s, done.
From uit.mpei.ru:TekotovaVA/cs-lab02
e406c37..27bf76e main -> origin/main

User@DellVostro15 MINGW64 ~/Desktop/lab2/bob/project (main)
$ git pull --ff-only
Updating e406c37..27bf76e
Fast-forward
project.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

//Алиса и Боб добавляют в программу печать максимума и минимума соответственно, а затем пробуют загрузить изменения на репозитарий на сервере:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git add project.cpp

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -m 'добавлен вывод максимума'
[main b48ea80] добавлен вывод максимума
1 file changed, 3 insertions(+)

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 393 bytes | 393.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:TekotovaVA/cs-lab02.git
27bf76e..b48ea80 main -> main

User@DellVostro15 MINGW64 ~/Desktop/lab2/bob/project (main)
$ git add project.cpp

User@DellVostro15 MINGW64 ~/Desktop/lab2/bob/project (main)
$ git commit -m 'добавлен вывод минимума'
[main e4bebca] добавлен вывод минимума
1 file changed, 4 insertions(+)

User@DellVostro15 MINGW64 ~/Desktop/lab2/bob/project (main)
$ git push
To uit.mpei.ru:TekotovaVA/cs-lab02.git
! [rejected] main -> main (fetch first)
error: failed to push some refs to 'uit.mpei.ru:TekotovaVA/cs-lab02.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

//Однако загрузить на сервер изменения получается только у Алисы потому, что Боб затем пытается загрузить версию, основанную на более старом коммите, чем самый новый коммит в репозитарии GitHub

//Загрузила версию с сервера:
User@DellVostro15 MINGW64 ~/Desktop/lab2/bob/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), 373 bytes | 26.00 KiB/s, done.
From uit.mpei.ru:TekotovaVA/cs-lab02
27bf76e..b48ea80 main -> origin/main

User@DellVostro15 MINGW64 ~/Desktop/lab2/bob/project (main)
$ git log --oneline --decorate
e4bebca (HEAD -> main) добавлен вывод минимума
27bf76e добавлен вывод деления
e406c37 добавлен вывод произведения
6fce53c добавлен вывод разности
768e54a добавлен вывод суммы
c1b8217 добавлен ввод двух чисел
de24086 build: добавлен файл проекта
7c852bc code: заготовка программы

//Комманда завершается с ошибкой из-за конфликта в файле с кодом main.cpp. Производный файл от файла Алисы и Боба записывается в рабочую копию с помеченными метками конфликта.
Убрала метки конфликта, и доработала код так, чтобы программа компилировалась и работала. Затем загрузила изменения в индекс и продолжила операцию git rebase, с помощью флага –continue.

User@DellVostro15 MINGW64 ~/Desktop/lab2/bob/project (main)
$ git rebase --continue
fatal: No rebase in progress?

//Отправила изменения на сервер:

User@DellVostro15 MINGW64 ~/Desktop/lab2/bob/project (main)
$ git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 397 bytes | 397.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:TekotovaVA/cs-lab02.git
b48ea80..c1c6f23 main -> main

//В это время Алиса создаёт новую ветку (с помощью комманды git branch) для изменения типа переменных на вещественный.
Начинает она с коммита, когда добавлена печать максимума:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git branch double

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git checkout double
Switched to branch 'double'

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (double)
$ git add project.cpp

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (double)
$ git commit -m 'изменили тип данных'
[double 2ffe1c6] изменили тип данных
1 file changed, 1 insertion(+), 1 deletion(-)

// Затем переключилась на ветку main. И синхронизировала её:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (double)
$ git checkout main
Merge made by the 'ort' strategy.
project.cpp | 2 +-o date with 'origin/main'.
1 file changed, 1 insertion(+), 1 deletion(-)
User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git push
Enumerating objects: 10, done.
Counting objects: 100% (10/10), done.
Delta compression using up to 8 threads
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 643 bytes | 643.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:TekotovaVA/cs-lab02.git
c1c6f23..f8fac06 main -> main

//историю всех веток репозитария:

User@DellVostro15 MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log --oneline --decorate --all --graph
* f8fac06 (HEAD -> main, origin/main) Merge branch 'double'
|\
| * 2ffe1c6 (double) изменили тип данных
* | c1c6f23 добавлен вывод минимума
|/
* b48ea80 добавлен вывод максимума
* 27bf76e добавлен вывод деления
* e406c37 добавлен вывод произведения
* 6fce53c добавлен вывод разности
* 768e54a добавлен вывод суммы
* c1b8217 добавлен ввод двух чисел
* de24086 build: добавлен файл проекта
* 7c852bc code: заготовка программы