From cc745b50fcdab470e30ff1995afac1d266155675 Mon Sep 17 00:00:00 2001 From: "Alice (EfimovaLA)" Date: Sat, 18 May 2024 19:29:38 +0300 Subject: [PATCH] text: README.txt --- README.txt | 1075 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 1075 insertions(+) create mode 100644 README.txt diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..26e5f8a --- /dev/null +++ b/README.txt @@ -0,0 +1,1075 @@ +Отчет по лабораторной работе № 2 "Система контроля версий Git" + +Выполнил: Ефимова Л. А. +Группа: А-03-23 +Проверил: Козлюк Д. А. + +Примечание: работа выполнялась на Windows. + +1. Создала на рабочем столе каталог lab02 и запустила в нем Git Bash, приглашение: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02 +$ + +2. Просмотрела файлы в рабочем каталоге можно командой "ls" --- пусто: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02 +$ ls + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02 +$ + +3. Создала каталоги Алисы и Боба, создала католог "project", изучила команду "cd" в процессе: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02 +$ mkdir alice + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02 +$ mkdir bob + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02 +$ cd bob + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob +$ cd .. + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02 +$ cd alice + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice +$ mkdir project + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice +$ ls +project/ + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice +$ cd project + +4. Инциализировала репозитарий: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project +$ git init +Initialized empty Git repository in C:/Users/lyuda/Desktop/lab02/alice/project/.git/ + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (master) +$ ls -A +.git/ + +5. Настроила репозитарий Алисы: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (master) +$ git config user.name 'Alice (EfimovaLA)' + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (master) +$ git config user.email 'YefimovaLA@mpei.ru' + +6. Запустила Codeblocks создала проект в репозитарии Алисы: + +7. Проверка статуса рабочей копии: +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (master) +$ git status +On branch master + +No commits yet + +Untracked files: + (use "git add ..." 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) + +On branch master - означает что мы находимся на ветке master +No commits yet - коммитов еще не существует + +Untracked files: + (use "git add ..." to include in what will be committed) + bin/ + main.cpp + obj/ + project.cbp +Показывает какие файлы не находятся под контролем версий. Консоль выводит команду для +добавления файлов и перечисляет файлы. + +8. Начала отслеживать файлы main.cpp: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (master) +$ git add main.cpp + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (master) +$ + +9. Проверка отслеживания файла: + +lyuda@DESKTOP-AJN1V4Q 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 +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (master) +$ +Мы видим что файл main.cpp теперь отслеживается. + +10. коммит с файлом main.cpp: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (master) +$ git commit -m 'code: заготовка программы' +[master (root-commit) 24bf0b6] code: заготовка программы + 1 file changed, 9 insertions(+) + create mode 100644 main.cpp + +11. переименовала ветку после создания коммита: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (master) +$ git branch -m main + +12. добавила файл project.cbp в отслеживание и сделала коммит с ним: + +lyuda@DESKTOP-AJN1V4Q 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 + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m 'build: добавлен файл проекта' +[main 1e2f2cd] build: добавлен файл проекта + 1 file changed, 40 insertions(+) + create mode 100644 project.cbp + +13. Изменила тело функции main() на ввод чисел, проверила статус репозитария: + +lyuda@DESKTOP-AJN1V4Q 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 + +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") + +Мы видим, что файл main.cpp был изменен. Также предложено сделать коммит или отменить изменения в директории. + +14. 1 способ коммита изменения: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add main.cpp + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m 'code: изменена функция main' +[main 8943db9] code: изменена функция main + 1 file changed, 3 insertions(+), 2 deletions(-) + +15. Добавлен вывод сумммы. Применила второй способ коммита изменения: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add -u + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m 'code: добавлен вывод суммы' +[main b8dc6ec] code: добавлен вывод суммы + 1 file changed, 1 insertion(+) + +16. Добавлен вывод разности. Применила 3 способ коммита изменения: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -a -m 'code: добавлен вывод разности' +[main 6292782] code: добавлен вывод разности + 1 file changed, 2 insertions(+), 1 deletion(-) + +17. Создала пустой файл в CodeBlocks и указала файлы для игнорирования. + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git status +On branch main +Untracked files: + (use "git add ..." to include in what will be committed) + .gitignore + +nothing added to commit but untracked files present (use "git add" to track) + +18. Добавила .gitignore в отслеживаемые файлы и закоммитила изменения: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add .gitignore + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m 'git: игнорирование файлов' +[main d72791f] git: игнорирование файлов + 1 file changed, 4 insertions(+) + create mode 100644 .gitignore + +19. 1 Способ просмотра изменений в коммитах: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log +commit 63c24a417c20934cc8403d4125488ec7efe36a74 (HEAD -> main) +Author: Alice (EfimovaLA) +Date: Tue Apr 9 19:27:33 2024 +0300 + + git: игнорирование файлов + +commit 6292782a16546643add744a3bf1546bff4d71a23 +Author: Alice (EfimovaLA) +Date: Tue Apr 9 19:07:15 2024 +0300 + + code: добавлен вывод разности + +commit b8dc6ec62aacb5145d19cfc767e9db29fa987087 +Author: Alice (EfimovaLA) +Date: Tue Apr 9 18:57:59 2024 +0300 + + code: добавлен вывод суммы + +commit 8943db9203d5fa034b71b804a98b527e4218c6f6 +Author: Alice (EfimovaLA) +Date: Tue Apr 9 18:54:11 2024 +0300 + + code: изменена функция main + +commit 0222fafea412e4f51ca65ba68c371fb9e2bec08a +Author: Alice (EfimovaLA) +Date: Mon Apr 8 23:31:24 2024 +0300 + + build: добавлен файл проекта + +commit 2e564bd989bddfc4ebeb0c47e253032815c05617 +Author: Alice (EfimovaLA) +Date: Mon Apr 8 23:29:23 2024 +0300 + + code: заготовка программы + +2 способ: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --oneline --decorate +63c24a4 (HEAD -> main) git: игнорирование файлов +6292782 code: добавлен вывод разности +b8dc6ec code: добавлен вывод суммы +8943db9 code: изменена функция main +0222faf build: добавлен файл проекта +2e564bd code: заготовка программы + +3 способ: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --oneline --decorate --all --graph +* 63c24a4 (HEAD -> main) git: игнорирование файлов +* 6292782 code: добавлен вывод разности +* b8dc6ec code: добавлен вывод суммы +* 8943db9 code: изменена функция main +* 0222faf build: добавлен файл проекта +* 2e564bd code: заготовка программы + +20. Описание git log --stat: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --stat +commit d72791f9454a3c336df728b124ad2518732821d2 (HEAD -> main) +Author: Alice (EfimovaLA) +Date: Tue Apr 9 20:12:44 2024 +0300 + + git: игнорирование файлов + + .gitignore | 4 ++++ + 1 file changed, 4 insertions(+) + + +1)Мы видим полный хэш коммита. +2)Автора коммита с именем и почтой. +3)Указана дата создания коммита. +4)Название коммита. +5)Перечислены сами изменения. + +21. Пробую фильтры для коммитов по разным признакам: + +1) фильтр по main.cpp: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log -- main.cpp +commit 6292782a16546643add744a3bf1546bff4d71a23 +Author: Alice (EfimovaLA) +Date: Tue Apr 9 19:07:15 2024 +0300 + + code: добавлен вывод разности + +commit b8dc6ec62aacb5145d19cfc767e9db29fa987087 +Author: Alice (EfimovaLA) +Date: Tue Apr 9 18:57:59 2024 +0300 + + code: добавлен вывод суммы + +commit 8943db9203d5fa034b71b804a98b527e4218c6f6 +Author: Alice (EfimovaLA) +Date: Tue Apr 9 18:54:11 2024 +0300 + + code: изменена функция main + +commit 2e564bd989bddfc4ebeb0c47e253032815c05617 +Author: Alice (EfimovaLA) +Date: Mon Apr 8 23:29:23 2024 +0300 + + code: заготовка программы + +2) фильтр по code: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --grep "code:" +commit 6292782a16546643add744a3bf1546bff4d71a23 +Author: Alice (EfimovaLA) +Date: Tue Apr 9 19:07:15 2024 +0300 + + code: добавлен вывод разности + +commit b8dc6ec62aacb5145d19cfc767e9db29fa987087 +Author: Alice (EfimovaLA) +Date: Tue Apr 9 18:57:59 2024 +0300 + + code: добавлен вывод суммы + +commit 8943db9203d5fa034b71b804a98b527e4218c6f6 +Author: Alice (EfimovaLA) +Date: Tue Apr 9 18:54:11 2024 +0300 + + code: изменена функция main + +commit 2e564bd989bddfc4ebeb0c47e253032815c05617 +Author: Alice (EfimovaLA) +Date: Mon Apr 8 23:29:23 2024 +0300 + + code: заготовка программы + +3) фильтр по build: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --grep "build:" +commit 0222fafea412e4f51ca65ba68c371fb9e2bec08a +Author: Alice (EfimovaLA) +Date: Mon Apr 8 23:31:24 2024 +0300 + + build: добавлен файл проекта + +4) фильтр по project.cbp: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log -- project.cbp +commit 0222fafea412e4f51ca65ba68c371fb9e2bec08a +Author: Alice (EfimovaLA) +Date: Mon Apr 8 23:31:24 2024 +0300 + + build: добавлен файл проекта + +22. Просмотр последних коммитов тремя способами: +1) текущий: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git show HEAD +commit d72791f9454a3c336df728b124ad2518732821d2 (HEAD -> main) +Author: Alice (EfimovaLA) +Date: Tue Apr 9 20:12:44 2024 +0300 + + git: игнорирование файлов + +diff --git a/.gitignore b/.gitignore +new file mode 100644 +index 0000000..df212eb +--- /dev/null ++++ b/.gitignore +@@ -0,0 +1,4 @@ ++/bin ++/obj ++/project.layout ++/project.depend + +2) по имени ветви: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git show main +commit d72791f9454a3c336df728b124ad2518732821d2 (HEAD -> main) +Author: Alice (EfimovaLA) +Date: Tue Apr 9 20:12:44 2024 +0300 + + git: игнорирование файлов + +diff --git a/.gitignore b/.gitignore +new file mode 100644 +index 0000000..df212eb +--- /dev/null ++++ b/.gitignore +@@ -0,0 +1,4 @@ ++/bin ++/obj ++/project.layout ++/project.depend + +3) по хэшу нужного коммита: + +$ git show d72791f +commit d72791f9454a3c336df728b124ad2518732821d2 (HEAD -> main) +Author: Alice (EfimovaLA) +Date: Tue Apr 9 20:12:44 2024 +0300 + + git: игнорирование файлов + +diff --git a/.gitignore b/.gitignore +new file mode 100644 +index 0000000..df212eb +--- /dev/null ++++ b/.gitignore +@@ -0,0 +1,4 @@ ++/bin ++/obj ++/project.layout ++/project.depend + +4) просмотр предыдущего коммита: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git show HEAD~1 +commit 6292782a16546643add744a3bf1546bff4d71a23 +Author: Alice (EfimovaLA) +Date: Tue Apr 9 19:07:15 2024 +0300 + + code: добавлен вывод разности + +diff --git a/main.cpp b/main.cpp +index 056d8a1..e84d77b 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -7,5 +7,6 @@ int main() + cout << "Enter A and B: "; + int a, b; + cin >> a >> b; +- cout << a + b; ++ cout << "A + B = " << a + b << '\n'; ++ cout << "A - B = " << a - b << '\n'; + } + +23. Внесла произведение чисел в main.cpp, но не сделала коммит. Изменения в рабочей версии: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git diff +diff --git a/main.cpp b/main.cpp +index e84d77b..8d75565 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -9,4 +9,5 @@ int main() + cin >> a >> b; + cout << "A + B = " << a + b << '\n'; + cout << "A - B = " << a - b << '\n'; ++ cout << "A * B = " << a * b << '\n'; + } + +1 строка: Отображаются данные для сравнения. В данном случае a/main.cpp и b/main.cpp. +2 строка: В этой строке отображаются внутренние метаданные Git. +Номера в этих выходных данных соответствуют хеш-идентификаторам версий объектов Git. +3 и 4 строка: Это обозначения для каждого источника входных и выходных данных. Маркеры изменений. +5 строка: Заголовок фрагмента, окруженный символами @@. Он кратко описывает изменения в файле. +В данном случае извлечено 4 строки начиная со строки 9. Также после 9 строки добавлено 5 строк. +Остальные строки: Отражают недавние изменения. + или - показывает источник входных данных сравнения. ++ для b/main.cpp и - для a/main.cpp. + +24. Посмотрела изменения 2 и 3 с конца коммитов: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git diff HEAD~3 HEAD~2 +diff --git a/main.cpp b/main.cpp +index eac5055..056d8a1 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -7,4 +7,5 @@ int main() + cout << "Enter A and B: "; + int a, b; + cin >> a >> b; ++ cout << a + b; + } + +25. Посмотрела разницу между первым коммитом и коммитом разности: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git diff HEAD~1 HEAD~5 +diff --git a/main.cpp b/main.cpp +index e84d77b..b4392ec 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -4,9 +4,6 @@ using namespace std; + + 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 << "Hello world!" << endl; ++ return 0; + } +diff --git a/project.cbp b/project.cbp +deleted file mode 100644 +index 99bb702..0000000 +--- a/project.cbp ++++ /dev/null +@@ -1,40 +0,0 @@ +- +- +- +- +- +- + +26. Коммит произведения: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add main.cpp + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m "code: добавлен вывод произведения" +[main c1a07cf] code: добавлен вывод произведения + 1 file changed, 1 insertion(+) + +27. Добавила комментарий в программу и откатила изменения: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git reset --hard HEAD~1 +HEAD is now at c1a07cf code: игнорирование файлов + +2)lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git checkout HEAD -- main.cpp + +27. Зарегестрировалась на сервере и создала ключи: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ ssh-keygen +Generating public/private ed25519 key pair. +Enter file in which to save the key (/c/Users/lyuda/.ssh/id_ed25519): +Created directory '/c/Users/lyuda/.ssh'. +Enter passphrase (empty for no passphrase): +Enter same passphrase again: +Your identification has been saved in /c/Users/lyuda/.ssh/id_ed25519 +Your public key has been saved in /c/Users/lyuda/.ssh/id_ed25519.pub +The key fingerprint is: +SHA256:slOIrxuAAvgvQP1wFZVyoZp3E+0AAINBYBKNdLC6JfI lyuda@DESKTOP-AJN1V4Q +The key's randomart image is: ++--[ED25519 256]--+ +|BX++...+ooo | +|=.= . ..oo. | +|oo o . .oo . | +|+o +.o. + | +|B + .+o.So . | +|o* o ..+. . | +|. E o + | +| . o . | +| o. | ++----[SHA256]-----+ + +28. Запустила агента и дала доступ к ключам: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ eval $(ssh-agent -s) +Agent pid 2761 + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ ssh-add +Identity added: /c/Users/lyuda/.ssh/id_ed25519 (lyuda@DESKTOP-AJN1V4Q) + +29. Подключится к репозитарию по SSH не вышло, подключилась через http: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git remote add origin git@uit.mpei.ru:EfimovaLA/cs-lab02.git + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git push -u origin main + + +sh: connect to host uit.mpei.ru port 22: Connection timed out +fatal: Could not read from remote repository. + +Please make sure you have the correct access rights +and the repository exists. + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git remote set-url origin http://uit.mpei.ru/git/EfimovaLA/cs-lab02.git + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git push -u origin main +warning: auto-detection of host provider took too long (>2000ms) +warning: see https://aka.ms/gcm/autodetect for more information. +Enumerating objects: 24, done. +Counting objects: 100% (24/24), done. +Delta compression using up to 8 threads +Compressing objects: 100% (22/22), done. +Writing objects: 100% (24/24), 3.04 KiB | 622.00 KiB/s, done. +Total 24 (delta 4), 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/EfimovaLA/cs-lab02.git + * [new branch] main -> main +branch 'main' set up to track 'origin/main'. + +30. Открыла Git Bush в папке боба и скопировала проект: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob +$ git clone http://uit.mpei.ru/git/EfimovaLA/cs-lab02.git project +Cloning into 'project'... +remote: Enumerating objects: 24, done. +remote: Counting objects: 100% (24/24), done. +remote: Compressing objects: 100% (22/22), done. +remote: Total 24 (delta 4), reused 0 (delta 0), pack-reused 0 +Receiving objects: 100% (24/24), done. +Resolving deltas: 100% (4/4), done. + +31. Настроила git для боба: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main) +$ git config user.name 'Bob (EfimovaLA)' + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main) +$ git config user.email 'YefimovaLA@mpei.ru' + +32. Добавила коммит произведения и сделала коммит от боба: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main) +$ git commit -a -m 'code: добавлено произведение' +[main 279ce71] code: добавлено произведение + 1 file changed, 1 insertion(+) + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main) +$ git log +commit 279ce717b1d1e09e4103032c3e50fb42921c931b (HEAD -> main) +Author: Bob (EfimovaLA) +Date: Tue Apr 9 23:37:16 2024 +0300 + + code: добавлено произведение + +32. Отправила на сервер коммит: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/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), 387 bytes | 387.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/EfimovaLA/cs-lab02.git + 076211a..279ce71 main -> main + +33. Загрузила изменения от лица Алисы: + +lyuda@DESKTOP-AJN1V4Q 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), 367 bytes | 73.00 KiB/s, done. +From http://uit.mpei.ru/git/EfimovaLA/cs-lab02 + 076211a..279ce71 main -> origin/main + +в рабочей версии изменений нет + +34. Посмотрела граф коммитов: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --oneline --decorate +b96e7ee (HEAD -> main, origin/main) code: добавлено произведение +44d370d git: игнорирование файлов +400a777 code: добавлен вывод разности +61348b1 code: добавлен вывод суммы +7dcfd9c code: изменена функция main +4fc7081 build: добавлен файл проекта +05e1445 code: заготовка программы + +35. Продвинула ветку main к версии на сервере: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git pull --ff-only +Updating 9d4154b..b77b31d +Fast-forward + main.cpp | 1 + + 1 file changed, 1 insertion(+) + +36. Тоже самое пункты 32-35, но от лица Алисы: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -a -m 'code: вывод деления' +[main 5f801ed] code: вывод деления + 1 file changed, 1 insertion(+) + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/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), 402 bytes | 402.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/EfimovaLA/cs-lab02.git + b77b31d..5f801ed main -> main + +от боба: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main) +$ git pull +Updating b96e7ee..0391d20 +Fast-forward + main.cpp | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main) +$ git log --oneline --decorate +0391d20 (HEAD -> main, origin/main, origin/HEAD) code: вывод деления +b96e7ee code: добавлено произведение +44d370d git: игнорирование файлов +400a777 code: добавлен вывод разности +61348b1 code: добавлен вывод суммы +7dcfd9c code: изменена функция main +4fc7081 build: добавлен файл проекта +05e1445 code: заготовка программы + +37. Дополнила программу выводом максимума и отправила на сервер: + +от Алисы: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -a -m 'code: вывод максимума' +[main ffcf0de] code: вывод максимума + 1 file changed, 8 insertions(+), 1 deletion(-) + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/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), 473 bytes | 473.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/EfimovaLA/cs-lab02.git + 9f0166c..ffcf0de main -> main + +38. от Боба добавляем вывод минимума и пытаемся отправить на сервер: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main) +$ git commit -a -m 'code: добавлен вывод минимума' +[main ca0085a] code: добавлен вывод минимума + 1 file changed, 5 insertions(+) + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main) +$ git push +To http://uit.mpei.ru/git/EfimovaLA/cs-lab02.git + ! [rejected] main -> main (fetch first) +error: failed to push some refs to 'http://uit.mpei.ru/git/EfimovaLA/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. + +появилась подсказка с загрузкой коммитов из удаленного репозитория. + +39. Загрузила от боба коммиты с сервера: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main) +$ git pull +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), 422 bytes | 8.00 KiB/s, done. +From http://uit.mpei.ru/git/EfimovaLA/cs-lab02 + 6a353fa..97dddd0 main -> origin/main +Auto-merging main.cpp +CONFLICT (content): Merge conflict in main.cpp +Automatic merge failed; fix conflicts and then commit the result. + +40. Посмотрело дерево коммитов: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main|MERGING) +$ git log --oneline --decorate --all --graph +* ca0085a (HEAD -> main) code: добавлен вывод минимума +| * 97dddd0 (origin/main, origin/HEAD) code: вывод максимума +|/ +* 6a353fa code: вывод деления +* c9f40a5 code: добавлен вывод произведения +* d4b7405 code: добавлен вывод произведения +* ed6e273 git: игнорирование файлов +* 8b4db8a code: добавлен вывод разности +* 4f4b4db code: добавлен вывод суммы +* 5355a89 code: изменена функция main +* ad432f9 build: добавлен файл проекта +* be8ab11 code: заготовка программы + +41. Попыталась поместить коммит боба поверх коммита алисы и получила ошибку: + +lyuda@DESKTOP-AJN1V4Q 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. + +42. Проверила статус репозитория: + +lyuda@DESKTOP-AJN1V4Q 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 + +no changes added to commit (use "git add" and/or "git commit -a") + +Видим предупреждение о расхождении ветки на сервере с моей веткой. Выводит подсказки для решения проблемы. + +43. Исправила ошибки в коде закоммитила и продолжила rebase: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main|REBASE 1/1) +$ git rebase +fatal: It seems that there is already a rebase-merge directory, and +I wonder if you are in the middle of another rebase. If that is the +case, please try + git rebase (--continue | --abort | --skip) +If that is not the case, please + rm -fr ".git/rebase-merge" +and run me again. I am stopping in case you still have something +valuable there. + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main|REBASE 1/1) +$ git rebase --continue +Successfully rebased and updated refs/heads/main. + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main) +$ git log --oneline +6b1f7cc (HEAD -> main) code: добавлен вывод минимума +9b19b96 (origin/main, origin/HEAD) code: вывод максимума +0391d20 code: вывод деления +b96e7ee code: добавлено произведение +44d370d git: игнорирование файлов +400a777 code: добавлен вывод разности +61348b1 code: добавлен вывод суммы +7dcfd9c code: изменена функция main +4fc7081 build: добавлен файл проекта +05e1445 code: заготовка программы + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main) +$ git commit --amend -m 'code: вывод максимального и минимального чисел' +[main 79a83e4] code: вывод максимального и минимального чисел + Date: Sat May 18 12:27:44 2024 +0300 + 1 file changed, 7 insertions(+) + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/bob/project (main) +$ git log --oneline +79a83e4 (HEAD -> main) code: вывод максимального и минимального чисел +9b19b96 (origin/main, origin/HEAD) code: вывод максимума +0391d20 code: вывод деления +b96e7ee code: добавлено произведение +44d370d git: игнорирование файлов +400a777 code: добавлен вывод разности +61348b1 code: добавлен вывод суммы +7dcfd9c code: изменена функция main +4fc7081 build: добавлен файл проекта +05e1445 code: заготовка программы + +44. Создаем от Алисы ветку double и переключаемся на нее. (репозитариий Алисы не синхронизирован +с сервером) + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git branch double + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git checkout double +Switched to branch 'double' + +45. Поменяла тип а и b и сделала коммит: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (double) +$ git commit -a -m 'code: тип данных double' +[double 3d4e90f] code: тип данных double + 1 file changed, 1 insertion(+), 1 deletion(-) + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (double) +$ git checkout main +Switched to branch 'main' +Your branch is up to date with 'origin/main'. + +46. Синхронизировала с сервером + +lyuda@DESKTOP-AJN1V4Q 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), 446 bytes | 44.00 KiB/s, done. +From http://uit.mpei.ru/git/EfimovaLA/cs-lab02 + 9b19b96..79a83e4 main -> origin/main + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git pull +Updating 9b19b96..79a83e4 +Fast-forward + main.cpp | 7 +++++++ + 1 file changed, 7 insertions(+) + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --oneline --decorate --all --graph +* d89e435 (double) code: тип данных double +| * 79a83e4 (HEAD -> main, origin/main) code: вывод максимального и минимального чисел +|/ +* 9b19b96 code: вывод максимума +* 0391d20 code: вывод деления +* b96e7ee code: добавлено произведение +* 44d370d git: игнорирование файлов +* 400a777 code: добавлен вывод разности +* 61348b1 code: добавлен вывод суммы +* 7dcfd9c code: изменена функция main +* 4fc7081 build: добавлен файл проекта +* 05e1445 code: заготовка программы + +47. переключились на ветку double и также посмотрели дерево коммитов: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git checkout double +Switched to branch 'double' + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (double) +$ git log --oneline --decorate --all --graph +* d89e435 (HEAD -> double) code: тип данных double +| * 79a83e4 (origin/main, main) code: вывод максимального и минимального чисел +|/ +* 9b19b96 code: вывод максимума +* 0391d20 code: вывод деления +* b96e7ee code: добавлено произведение +* 44d370d git: игнорирование файлов +* 400a777 code: добавлен вывод разности +* 61348b1 code: добавлен вывод суммы +* 7dcfd9c code: изменена функция main +* 4fc7081 build: добавлен файл проекта +* 05e1445 code: заготовка программы + +48. слила ветки и отправила на сервер: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/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(-) + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/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), 755 bytes | 755.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/EfimovaLA/cs-lab02.git + 79a83e4..c4297f7 main -> main + +49. Истории веток: + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --oneline --decorate --all --graph +* c4297f7 (HEAD -> main, origin/main) Merge branch 'double' +|\ +| * d89e435 (double) code: тип данных double +* | 79a83e4 code: вывод максимального и минимального чисел +|/ +* 9b19b96 code: вывод максимума +* 0391d20 code: вывод деления +* b96e7ee code: добавлено произведение +* 44d370d git: игнорирование файлов +* 400a777 code: добавлен вывод разности +* 61348b1 code: добавлен вывод суммы +* 7dcfd9c code: изменена функция main +* 4fc7081 build: добавлен файл проекта +* 05e1445 code: заготовка программы + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (main) +$ git checkout double +Switched to branch 'double' + +lyuda@DESKTOP-AJN1V4Q MINGW64 ~/Desktop/lab02/alice/project (double) +$ git log --oneline --decorate --all --graph +* c4297f7 (origin/main, main) Merge branch 'double' +|\ +| * d89e435 (HEAD -> double) code: тип данных double +* | 79a83e4 code: вывод максимального и минимального чисел +|/ +* 9b19b96 code: вывод максимума +* 0391d20 code: вывод деления +* b96e7ee code: добавлено произведение +* 44d370d git: игнорирование файлов +* 400a777 code: добавлен вывод разности +* 61348b1 code: добавлен вывод суммы +* 7dcfd9c code: изменена функция main +* 4fc7081 build: добавлен файл проекта +* 05e1445 code: заготовка программы \ No newline at end of file