Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
Alice (ShabatovAA) d0ac649afa
report
1 год назад
.gitignore git: игнорирование бинарных и лишних файлов 1 год назад
README.txt report 1 год назад
main.cpp Merge branch 'double' 1 год назад
project.cbp build: добавлен файл проекта 1 год назад

README.txt

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


Выполнил: Шабатов А.А.
Группа: А-02-23
Проверил:

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

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


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02
$


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


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02
$ ls

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02
$


Ничего не вывело, так как в каталоге lab02 пусто.


3. Создал каталоги Алисы и Боба, создал каталог "project", в процессе изучил команду "cd":


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02
$ mkdir alice

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02
$ mkdir bob

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02
$ cd alice

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice
$ mkdir project

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice
$ cd project

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project
$ cd ..

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice
$ cd project


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


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project
$ git init
Initialized empty Git repository in C:/Users/qwe/Desktop/lab02/alice/project/.git/


Так как не появилась подсказка(из-за старой версии Git), поменяю имя ветки на "main" после первого коммита.


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


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (master)
$ git config user.name "Alice (ShabatovAA)"

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (master)
$ git config user.email "ShabatovAA@mpei.ru"


6. Запустил CodeBlocks и создал проект в репозитарии Алисы.


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

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (master)
$ git status
On branch master // на ветке master

No commits yet //коммиты еще не сделаны

Untracked files: //неотслеживаемые файлы
(use "git add <file>..." to include in what will be committed) // используйте "git.add", чтобы добавить файлы, которые будут закоммичены
bin/ //неотслеживаемый файл
main.cpp //неотслеживаемый файл
obj/ //неотслеживаемый файл
project.cbp //неотслеживаемый файл

nothing added to commit but untracked files present (use "git add" to track) // ничего не добавлено, чтобы коммитить


8. Начал отслеживание файла "main.cpp" и потворно проверил состояние рабочей копии:


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (master)
$ git add main.cpp

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (master)
$ git status
On branch master

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


9. Выполнил коммит с файлом "main.cpp" и переименовал ветку на "main":


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (master)
$ git commit -m "code: заготовка программы"
[master (root-commit) 995bd9c] code: заготовка программы
1 file changed, 9 insertions(+)
create mode 100644 main.cpp

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (master)
$ git branch -m main

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$


10. Добавил файл "project.cbp" в индекс и сделал с ним коммит:


qwe@DESKTOP-0BLJH9V MINGW64 ~/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

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m "build: добавлен файл проекта"
[main c5194b0] build: добавлен файл проекта
1 file changed, 40 insertions(+)
create mode 100644 project.cbp



11. Заменил тело функции main() на ввод двух чисел.


12. Просмотрел состояние репозитария:


qwe@DESKTOP-0BLJH9V MINGW64 ~/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 // файл 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")


13. Закомммитил изменения тремя разными способами:

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add main.cpp

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m "code: ввод двух чисел"
[main 075ec14] code: ввод двух чисел
1 file changed, 3 insertions(+), 1 deletion(-)

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add -u

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m "code: вывод суммы"
[main 3a39027] code: вывод суммы
1 file changed, 1 insertion(+)

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -a -m "code: вывод разности"
[main 781f3fa] code: вывод разности
1 file changed, 2 insertions(+), 1 deletion(-)


14. Создал файл ".gitignore" в CodeBlocks, куда записал бинарные и лишние файлы:

/bin
/obj
/project.depend


15. Создал коммит с файлом ".gitignore":


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add .gitignore

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m "git: игнорирование бинарных и лишних файлов"
[main 95fc615] git: игнорирование бинарных и лишних файлов
1 file changed, 3 insertions(+)
create mode 100644 .gitignore


16. Попробовал команды с "git log":


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log
commit 95fc615328eb9d4d8691a5eae1a787b865d8d585 (HEAD -> main)
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:37:30 2024 +0300

git: игнорирование бинарных и лишних файлов

commit 781f3fad6959015dd6411e1ae5542e728873929a
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:35:55 2024 +0300

code: вывод разности

commit 3a390275b91fa6f6d51b248db51d1ded59e9d993
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:34:50 2024 +0300

code: вывод суммы

commit 075ec14f9245f6be33ceb940721b4f93a1adfcb6
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:33:37 2024 +0300

code: ввод двух чисел

commit c5194b09d7982a958d9f89d20d224a63cfecf2f5
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:30:05 2024 +0300

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

commit 995bd9c53e0adc7173109db6875991617ca86108
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:29:37 2024 +0300

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

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --stat
commit 95fc615328eb9d4d8691a5eae1a787b865d8d585 (HEAD -> main)
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:37:30 2024 +0300

git: игнорирование бинарных и лишних файлов

.gitignore | 3 +++
1 file changed, 3 insertions(+)

commit 781f3fad6959015dd6411e1ae5542e728873929a
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:35:55 2024 +0300

code: вывод разности

main.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

commit 3a390275b91fa6f6d51b248db51d1ded59e9d993
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:34:50 2024 +0300

code: вывод суммы

main.cpp | 1 +
1 file changed, 1 insertion(+)

commit 075ec14f9245f6be33ceb940721b4f93a1adfcb6
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:33:37 2024 +0300

code: ввод двух чисел

main.cpp | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --oneline --decorate
95fc615 (HEAD -> main) git: игнорирование бинарных и лишних файлов
781f3fa code: вывод разности
3a39027 code: вывод суммы
075ec14 code: ввод двух чисел
c5194b0 build: добавлен файл проекта
995bd9c code: заготовка программы

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --oneline --decorate --all --graph
* 95fc615 (HEAD -> main) git: игнорирование бинарных и лишних файлов
* 781f3fa code: вывод разности
* 3a39027 code: вывод суммы
* 075ec14 code: ввод двух чисел
* c5194b0 build: добавлен файл проекта
* 995bd9c code: заготовка программы


17. Нашел коммиты по теме "build" и коммиты, затрагивающие "project.cbp":


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --grep "build:"
commit c5194b09d7982a958d9f89d20d224a63cfecf2f5
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:30:05 2024 +0300

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


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log -- "project.cbp"
commit c5194b09d7982a958d9f89d20d224a63cfecf2f5
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:30:05 2024 +0300

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


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


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git show HEAD
commit 95fc615328eb9d4d8691a5eae1a787b865d8d585 (HEAD -> main)
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:37:30 2024 +0300

git: игнорирование бинарных и лишних файлов

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..aecc882
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+/bin
+/obj
+/project.depend

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git show main
commit 95fc615328eb9d4d8691a5eae1a787b865d8d585 (HEAD -> main)
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:37:30 2024 +0300

git: игнорирование бинарных и лишних файлов

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..aecc882
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+/bin
+/obj
+/project.depend

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git show 95fc615
commit 95fc615328eb9d4d8691a5eae1a787b865d8d585 (HEAD -> main)
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:37:30 2024 +0300

git: игнорирование бинарных и лишних файлов

diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..aecc882
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+/bin
+/obj
+/project.depend


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


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git show HEAD~1
commit 781f3fad6959015dd6411e1ae5542e728873929a
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:35:55 2024 +0300

code: вывод разности

diff --git a/main.cpp b/main.cpp
index 6de6dd2..5371b30 100644
--- a/main.cpp
+++ b/main.cpp
@@ -7,6 +7,7 @@ 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'
+ << "A - B = " << a - b << '\n';
return 0;
}



qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git show main~1

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git show 781f3fa


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


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git diff
diff --git a/main.cpp b/main.cpp // просмотр различий между версиями
index 5371b30..fbd9488 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;
}


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

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git diff 995bd9c 781f3fa
diff --git a/main.cpp b/main.cpp
index b4392ec..5371b30 100644
--- a/main.cpp
+++ b/main.cpp
@@ -4,6 +4,10 @@ using namespace std;

int main()
{
- cout << "Hello world!" << endl;
+ cout << "Enter A and B: ";
+ int a, b;
+ cin >> a >> b;
+ cout << "A + B = " << a + b << '\n'
+ << "A - B = " << a - b << '\n';
return 0;
}




22. Закоммитил вывод произведения:


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add main.cpp

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m "code: вывод произведения"
[main ab4d251] code: вывод произведения
1 file changed, 2 insertions(+), 1 deletion(-)


23. Сделал откат коммита к предыдущему:


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git reset --hard HEAD~1
HEAD is now at 95fc615 git: игнорирование бинарных и лишних файлов

Над функцией main() добавил комментарий: // you may type whatever you want


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git checkout HEAD -- main.cpp


24. Обмен кодом через удаленное хранилище:


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ ssh-keygen
Generating public/private ed25519 key pair.
Enter file in which to save the key (/c/Users/qwe/.ssh/id_ed25519):
Created directory '/c/Users/qwe/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/qwe/.ssh/id_ed25519
Your public key has been saved in /c/Users/qwe/.ssh/id_ed25519.pub
The key fingerprint is:
SHA256:53CORz9hk4VG3Fmcltb8c37IGbYMnUWXiBFnKOE4p3Y qwe@DESKTOP-0BLJH9V
The key's randomart image is:
+--[ED25519 256]--+
| ..+*+.*O|
| o. ++oo**|
| o o. o.+o.|
| + ..o=.o|
| oSE+ == *o|
| . .O o o* o|
| . + o .|
| . . |
| |
+----[SHA256]-----+

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ eval $(ssh-agent -s)
Agent pid 4437

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ ssh-add
Identity added: /c/Users/qwe/.ssh/id_ed25519 (qwe@DESKTOP-0BLJH9V)

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ cat ~/.ssh/id_ed25519.pub
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIC8j7WadH3FKcYdMGLS47MF48zwP9GGK2S/sqiYB0VFQ qwe@DESKTOP-0BLJH9V


25. Отправка проекта на сервер:


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git remote add origin http://uit.mpei.ru/git/ShabatovAA/cs-lab02.git

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git push -u origin main
Enumerating objects: 18, done.
Counting objects: 100% (18/18), done.
Delta compression using up to 12 threads
Compressing objects: 100% (16/16), done.
Writing objects: 100% (18/18), 2.33 KiB | 2.33 MiB/s, done.
Total 18 (delta 2), reused 0 (delta 0), pack-reused 0 (from 0)
remote: . Processing 1 references
remote: Processed 1 references in total
To http://uit.mpei.ru/git/ShabatovAA/cs-lab02.git
* [new branch] main -> main
branch 'main' set up to track 'origin/main'.


Отобразил ссылку на проект:

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git remote -v
origin http://uit.mpei.ru/git/ShabatovAA/cs-lab02.git (fetch)
origin http://uit.mpei.ru/git/ShabatovAA/cs-lab02.git (push)



26. Создал копию проекта для Боба и настроил Git Боба:


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob
$ git clone http://uit.mpei.ru/git/ShabatovAA/cs-lab02.git project
Cloning into 'project'...
remote: Enumerating objects: 18, done.
remote: Counting objects: 100% (18/18), done.
remote: Compressing objects: 100% (16/16), done.
remote: Total 18 (delta 2), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (18/18), done.
Resolving deltas: 100% (2/2), done.

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob
$ cd project/

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main)
$ git config user.name "Bob (ShabatovAA)"

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main)
$ git config user.email "ShabatovAA@mpei.ru"


27. Добавил печать произведения чисел и сделал коммит:


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main)
$ git add main.cpp

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main)
$ git commit -m "code: вывод произведения"
[main 20a7e29] code: вывод произведения
1 file changed, 2 insertions(+), 1 deletion(-)

Убедился, что коммит сделан от имени боба:

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main)
$ git log
commit 20a7e291d29dadbc83a9b9ae1ac0c81e163f2f55 (HEAD -> main)
Author: Bob (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Mon Mar 25 00:17:39 2024 +0300

code: вывод произведения


28. Отправил коммит на сервер:


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/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), 405 bytes | 405.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0)
remote: . Processing 1 references
remote: Processed 1 references in total
To http://uit.mpei.ru/git/ShabatovAA/cs-lab02.git
95fc615..20a7e29 main -> main


29. Выполнил загрузку изменений "На машине Алисы":


qwe@DESKTOP-0BLJH9V MINGW64 ~/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), 385 bytes | 38.00 KiB/s, done.
From http://uit.mpei.ru/git/ShabatovAA/cs-lab02
95fc615..20a7e29 main -> origin/main

Можем заметить, что ветка "main" отстает на один коммит от ветки "origin/main", поэтому продвинем "main" к скачанной версии:


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --oneline --decorate --all --graph
* 20a7e29 (origin/main) code: вывод произведения
* 95fc615 (HEAD -> main) git: игнорирование бинарных и лишних файлов
* 781f3fa code: вывод разности
* 3a39027 code: вывод суммы
* 075ec14 code: ввод двух чисел
* c5194b0 build: добавлен файл проекта
* 995bd9c code: заготовка программы

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git pull --ff-only
Updating 95fc615..20a7e29
Fast-forward
main.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)


30. "На машине Алисы" добавил в программу печать деления, сделал коммит и отправил на сервер:


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add main.cpp

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m "code: печать деления"
[main c3fe092] code: печать деления
1 file changed, 2 insertions(+), 1 deletion(-)

qwe@DESKTOP-0BLJH9V MINGW64 ~/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), 421 bytes | 421.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0)
remote: . Processing 1 references
remote: Processed 1 references in total
To http://uit.mpei.ru/git/ShabatovAA/cs-lab02.git
20a7e29..c3fe092 main -> main


31. "На машине Боба" выполнил загрузку изменений и продвинул Боба до скачанной версии:

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/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), 401 bytes | 25.00 KiB/s, done.
From http://uit.mpei.ru/git/ShabatovAA/cs-lab02
20a7e29..c3fe092 main -> origin/main

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main)
$ git log --oneline --decorate --all --graph
* c3fe092 (origin/main, origin/HEAD) code: печать деления
* 20a7e29 (HEAD -> main) code: вывод произведения
* 95fc615 git: игнорирование бинарных и лишних файлов
* 781f3fa code: вывод разности
* 3a39027 code: вывод суммы
* 075ec14 code: ввод двух чисел
* c5194b0 build: добавлен файл проекта
* 995bd9c code: заготовка программы

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main)
$ git pull --ff-only
Updating 20a7e29..c3fe092
Fast-forward
main.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)


32. "На машине Алисы" добавил вывод максимума, сделал коммит и отправил на сервер:

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add main.cpp

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m "code: вывод максимума"
[main 4b7aa2e] code: вывод максимума
1 file changed, 6 insertions(+)

qwe@DESKTOP-0BLJH9V MINGW64 ~/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), 445 bytes | 445.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0)
remote: . Processing 1 references
remote: Processed 1 references in total
To http://uit.mpei.ru/git/ShabatovAA/cs-lab02.git
c3fe092..4b7aa2e main -> main


33. "На машине Боба" добавил вывод минимума, сделал коммит и попытался отправить на сервер:

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main)
$ git add main.cpp

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main)
$ git commit -m "code: вывод минимума"
[main ceef4a3] code: вывод минимума
1 file changed, 6 insertions(+)

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


34. "От лица Боба" вывел историю всех веток и попытался переместить коммит Боба поверх коммита Алисы:

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main)
$ git pull
Auto-merging main.cpp
CONFLICT (content): Merge conflict in main.cpp
Automatic merge failed; fix conflicts and then commit the result.

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main)
$ git log
commit ceef4a32ac434833623ccb7a55e93867bf139efb (HEAD -> main)
Author: Bob (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Mon Mar 25 00:44:05 2024 +0300

code: вывод минимума

commit c3fe09221df6c0541bde9cca02f30673e5c1701d (origin/main, origin/HEAD)
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Mon Mar 25 00:31:39 2024 +0300

code: печать деления

commit 20a7e291d29dadbc83a9b9ae1ac0c81e163f2f55
Author: Bob (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Mon Mar 25 00:17:39 2024 +0300

code: вывод произведения

commit 95fc615328eb9d4d8691a5eae1a787b865d8d585
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:37:30 2024 +0300

git: игнорирование бинарных и лишних файлов

commit 781f3fad6959015dd6411e1ae5542e728873929a
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:35:55 2024 +0300

code: вывод разности

commit 3a390275b91fa6f6d51b248db51d1ded59e9d993
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:34:50 2024 +0300

code: вывод суммы

commit 075ec14f9245f6be33ceb940721b4f93a1adfcb6
Author: Alice (ShabatovAA) <ShabatovAA@mpei.ru>
Date: Sun Mar 24 23:33:37 2024 +0300

code: ввод двух чисел

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main|MERGING)
$ git rebase origin/main
main.cpp: needs merge
error: cannot rebase: You have unstaged changes.
error: additionally, your index contains uncommitted changes.
error: Please commit or stash them.

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main|MERGING)
$ git status
On branch main
Your branch and 'origin/main' have diverged,
and have 1 and 1 different commits each, respectively.
(use "git pull" if you want to integrate the remote branch with yours)

You have unmerged paths.
(fix conflicts and run "git commit")
(use "git merge --abort" to abort the merge)

Unmerged paths:
(use "git add <file>..." to mark resolution)
both modified: main.cpp

Untracked files:
(use "git add <file>..." to include in what will be committed)
main.exe
main.o
project.layout

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

35. Отредактировал программу Боба, разрешил конфликт и отправил изменения на сервер:

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main|MERGING)
$ git add main.cpp

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/project (main|MERGING)
$ git commit -m "code: вывод минимума и максимума"
[main e1de533] code: вывод минимума и максимума

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/bob/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), 774 bytes | 774.00 KiB/s, done.
Total 6 (delta 2), reused 0 (delta 0), pack-reused 0 (from 0)
remote: . Processing 1 references
remote: Processed 1 references in total
To http://uit.mpei.ru/git/ShabatovAA/cs-lab02.git
4b7aa2e..e1de533 main -> main


36. "На машине Алисы" создал новую ветку "double", переключился на нее и изменил тип переменных(a и b) на "double":

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git branch double

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git checkout double
Switched to branch 'double'
M project.cbp

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (double)
$ git add main.cpp

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (double)
$ git commit -m "code: замена типа переменных на double"
[double dc21872] code: замена типа переменных на double
1 file changed, 1 insertion(+), 1 deletion(-)


37. Переключился на ветку "main", синхронизировал ветку "main" с сервером, слил ветку "double" в "main":


qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git fetch
remote: Enumerating objects: 10, done.
remote: Counting objects: 100% (10/10), done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 6 (delta 2), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (6/6), 754 bytes | 25.00 KiB/s, done.
From http://uit.mpei.ru/git/ShabatovAA/cs-lab02
4b7aa2e..e1de533 main -> origin/main

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --oneline --decorate --all --graph
* dc21872 (double) code: замена типа переменных на double
| * e1de533 (origin/main) code: вывод минимума и максимума
| |\
| |/
|/|
* | 4b7aa2e (HEAD -> main) code: вывод максимума
| * ceef4a3 code: вывод минимума
|/
* c3fe092 code: печать деления
* 20a7e29 code: вывод произведения
* 95fc615 git: игнорирование бинарных и лишних файлов
* 781f3fa code: вывод разности
* 3a39027 code: вывод суммы
* 075ec14 code: ввод двух чисел
* c5194b0 build: добавлен файл проекта
* 995bd9c code: заготовка программы

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git pull --ff-only
Updating 4b7aa2e..e1de533
Fast-forward
main.cpp | 6 ++++++
1 file changed, 6 insertions(+)

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$ git merge double
warning: in the working copy of 'project.cbp', LF will be replaced by CRLF the next time Git touches it
Auto-merging main.cpp
hint: Waiting for your editor to close the file... 0 [sig] bash 5091! sigpacket::process: Suppressing signal 18 to win32 process (pid 9804)
Merge made by the 'ort' strategy.
main.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

qwe@DESKTOP-0BLJH9V MINGW64 ~/Desktop/lab02/alice/project (main)
$
git log --oneline --decorate --all --graph
* 8519b8e (HEAD -> main) Merge branch 'double'
|\
| * dc21872 (double) code: замена типа переменных на double
* | e1de533 (origin/main) code: вывод минимума и максимума
|\|
| * 4b7aa2e code: вывод максимума
* | ceef4a3 code: вывод минимума
|/
* c3fe092 code: печать деления
* 20a7e29 code: вывод произведения
* 95fc615 git: игнорирование бинарных и лишних файлов
* 781f3fa code: вывод разности
* 3a39027 code: вывод суммы
* 075ec14 code: ввод двух чисел
* c5194b0 build: добавлен файл проекта
* 995bd9c code: заготовка программы


38. Отправка изменений на сервер:


qwe@DESKTOP-0BLJH9V MINGW64 ~/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), 734 bytes | 734.00 KiB/s, done.
Total 6 (delta 2), reused 0 (delta 0), pack-reused 0 (from 0)
remote: . Processing 1 references
remote: Processed 1 references in total
To http://uit.mpei.ru/git/ShabatovAA/cs-lab02.git
e1de533..8519b8e main -> main