From d0ac649afae106d2429b540d84e3679947ef4749 Mon Sep 17 00:00:00 2001 From: "Alice (ShabatovAA)" Date: Mon, 25 Mar 2024 01:47:01 +0300 Subject: [PATCH] report --- README.txt | 972 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 972 insertions(+) create mode 100644 README.txt diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..3543c54 --- /dev/null +++ b/README.txt @@ -0,0 +1,972 @@ +# Отчет по лабораторной работе № 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 ..." 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 ..." to unstage) + new file: main.cpp //отслеживаемый файл + +Untracked files: + (use "git add ..." 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 ..." to update what will be committed) + (use "git restore ..." to discard changes in working directory) + modified: main.cpp // файл main.cpp был изменен + +Untracked files: + (use "git add ..." 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) +Date: Sun Mar 24 23:37:30 2024 +0300 + + git: игнорирование бинарных и лишних файлов + +commit 781f3fad6959015dd6411e1ae5542e728873929a +Author: Alice (ShabatovAA) +Date: Sun Mar 24 23:35:55 2024 +0300 + + code: вывод разности + +commit 3a390275b91fa6f6d51b248db51d1ded59e9d993 +Author: Alice (ShabatovAA) +Date: Sun Mar 24 23:34:50 2024 +0300 + + code: вывод суммы + +commit 075ec14f9245f6be33ceb940721b4f93a1adfcb6 +Author: Alice (ShabatovAA) +Date: Sun Mar 24 23:33:37 2024 +0300 + + code: ввод двух чисел + +commit c5194b09d7982a958d9f89d20d224a63cfecf2f5 +Author: Alice (ShabatovAA) +Date: Sun Mar 24 23:30:05 2024 +0300 + + build: добавлен файл проекта + +commit 995bd9c53e0adc7173109db6875991617ca86108 +Author: Alice (ShabatovAA) +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) +Date: Sun Mar 24 23:37:30 2024 +0300 + + git: игнорирование бинарных и лишних файлов + + .gitignore | 3 +++ + 1 file changed, 3 insertions(+) + +commit 781f3fad6959015dd6411e1ae5542e728873929a +Author: Alice (ShabatovAA) +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) +Date: Sun Mar 24 23:34:50 2024 +0300 + + code: вывод суммы + + main.cpp | 1 + + 1 file changed, 1 insertion(+) + +commit 075ec14f9245f6be33ceb940721b4f93a1adfcb6 +Author: Alice (ShabatovAA) +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) +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) +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) +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) +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) +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) +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) +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) +Date: Mon Mar 25 00:44:05 2024 +0300 + + code: вывод минимума + +commit c3fe09221df6c0541bde9cca02f30673e5c1701d (origin/main, origin/HEAD) +Author: Alice (ShabatovAA) +Date: Mon Mar 25 00:31:39 2024 +0300 + + code: печать деления + +commit 20a7e291d29dadbc83a9b9ae1ac0c81e163f2f55 +Author: Bob (ShabatovAA) +Date: Mon Mar 25 00:17:39 2024 +0300 + + code: вывод произведения + +commit 95fc615328eb9d4d8691a5eae1a787b865d8d585 +Author: Alice (ShabatovAA) +Date: Sun Mar 24 23:37:30 2024 +0300 + + git: игнорирование бинарных и лишних файлов + +commit 781f3fad6959015dd6411e1ae5542e728873929a +Author: Alice (ShabatovAA) +Date: Sun Mar 24 23:35:55 2024 +0300 + + code: вывод разности + +commit 3a390275b91fa6f6d51b248db51d1ded59e9d993 +Author: Alice (ShabatovAA) +Date: Sun Mar 24 23:34:50 2024 +0300 + + code: вывод суммы + +commit 075ec14f9245f6be33ceb940721b4f93a1adfcb6 +Author: Alice (ShabatovAA) +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 ..." to mark resolution) + both modified: main.cpp + +Untracked files: + (use "git add ..." 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