diff --git a/отчет.txt b/отчет.txt new file mode 100644 index 0000000..f8de943 --- /dev/null +++ b/отчет.txt @@ -0,0 +1,849 @@ +Выполнила: Бадакина В. В. +Группа: А-01-24 +Проверил: + +Примечание: работа выполнялась на Windows. + +1.Создала на рабочем столе каталог lab02 и запустил в нем Git Bash, приглашение: +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02 +$ + +2.Просмотрела файлы в рабочем каталоге командой ls — пусто: +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02 +$ + +3. Создала каталоги Алисы и Боба, создала каталог project, изучилa команду cd в процессе: + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02 +$ cd alice + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice +$ cd .. + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02 +$ cd bob + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob +$ cd .. + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02 +$ cd alice + +4. Создала каталог project, перешла в него, вернулась и снова перешла. + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice +$ mkdir project + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice +$ cd project + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project +$ cd .. + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice +$ cd project + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project +$ + +5. Инициализирую репозитарий в текущем каталоге (project): +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project +$ git init +Initialized empty Git repository in C:/Users/Виктория/Desktop/lab02/alice/project/.git/ + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (master) +$ + +6. Переименовала имя ветки на main. +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (master) +$ git branch -m main + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ + +7. Настроила репозитарий. +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git config user.name 'Alice (BadakinaVV)' + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git config user.email 'BadakinaVV@mpei.ru' + +8. Cобрала проект +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git status +On branch main + +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) + + +1. On branch main: Эта строка сообщает, что вы находитесь на ветке с именем master. +2. No commits yet: Это сообщение указывает на то, что в текущей ветке (master) еще не было сделано ни одного коммита. +3. Untracked files:: Эта строка вводит раздел, который показывает файлы, которые находятся в рабочем каталоге, но еще не отслеживаются Git. +4. (use "git add ..." to include in what will be committed): Это подсказка от Git о том, как начать отслеживать неотслеживаемые файлы. +5. bin/: Это каталог (папка), который не отслеживается Git. +6. main.cpp: файл с кодом +7. obj/: каталог +8. project.cbp: Это файл проекта Code::Blocks +9. nothing added to commit but untracked files present (use "git add" to track): в данный момент нет добавленных к коммиту файлов, но есть неотслеживаемые файлы. + +9. Добавила файл main.cpp в индекс: +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add main.cpp + +10. Просмотрела состояние рабочей копии: +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git status +On branch main + +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 + +Изменения + +Добавился новый блок Changes to be committed: +Changes to be committed: + (use "git rm --cached ..." to unstage) + new file: main.cpp +Файл main.cpp был успешно добавлен в индекс и теперь отслеживается Git. + +Файл main.cpp исчез из раздела Untracked files: +Untracked files: + bin/ + obj/ + project.cbp +main.cpp больше не считается неотслеживаемым файлом, а остальные файлы (bin/, obj/, project.cbp) остались в списке неотслеживаемыми, тк их не добавляли их в индекс, Git продолжает считать их неотслеживаемыми. + +Итог:после выполнения команды git add main.cpp, Git начал отслеживать файл main.cpp. + +11. Выполнила коммит с файлом main.cpp и сообщением: +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m 'code: заготовка программы' +[main (root-commit) b1eae65] code: заготовка программы + 1 file changed, 9 insertions(+) + create mode 100644 main.cpp + +12. Занесла под гит файл project.cbp +vikki@Pro_Pactos 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 + +13. Проверила копию +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git status +On branch main +Changes to be committed: + (use "git restore --staged ..." to unstage) + new file: project.cbp + +Untracked files: + (use "git add ..." to include in what will be committed) + bin/ + obj/ + +14. Создала коммит +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m 'build: добавлен файл проекта' +[main 840e712] build: добавлен файл проекта + 1 file changed, 40 insertions(+) + create mode 100644 project.cbp + +15. Заменила тело функции. +vikki@Pro_Pactos 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") + +Различия: Команда git status показала два случая: + +Когда мы впервые добавляем файл в Git, он отмечается как new file. Это значит, что файл новый и уже готов к сохранению (коммиту). + +Когда файл уже есть в Git и его изменяют, он помечается как modified. + +16. Добавила сумму в коде и пересобрала его. Создала коммит. +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add main.cpp +git commit -m "Добавлен вывод суммы a и b" +[main a60f229] Добавлен вывод суммы a и b + 1 file changed, 4 insertions(+), 2 deletions(-) + +17. Добавила разность в коде и пересобрала его. Создала коммит. +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add -u +git commit -m "Добавлен вывод разности a и b" +[main a5d82ce] Добавлен вывод разности a и b + 1 file changed, 2 insertions(+), 1 deletion(-) + +18. Создала .gitignore в корне проекта и проверила копию в гитбаш. +vikki@Pro_Pactos 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) + +19. Создала коммит с .gitignore, тема - git. +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add .gitignore +git commit -m "git: добавлен .gitignore для исключения лишних файлов" +[main 31214c2] git: добавлен .gitignore для исключения лишних файлов + 1 file changed, 4 insertions(+) + create mode 100644 .gitignore + +20. Посмотрела историю. +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --stat +commit 31214c2055c4ff2fe7487c22e1f31256dbccc705 (HEAD -> main) +Author: Alice (BadakinaVV) +Date: Sun Mar 23 20:58:21 2025 +0300 + + git: добавлен .gitignore для исключения лишних файлов + + .gitignore | 4 ++++ + 1 file changed, 4 insertions(+) + +Изменён один файл: .gitignore +Добавлено 4 строки (4 insertions(+)) +Удалений нет +В этом коммите был создан файл .gitignore, в который добавлены 4 строки с правилами игнорирования (/bin, /obj, *.layout). Коммит не затрагивает другие файлы и служит для настройки исключений в Git. + +21. Нашла коммиты по теме build +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --grep "build" +commit 840e7121993a48a9070b91db40dc91a3261426ee +Author: Alice (BadakinaVV) +Date: Sun Mar 23 20:02:39 2025 +0300 + + build: добавлен файл проекта + +22. Нашла коммиты, затрагивающие project.cbp. +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log -- project.cbp +commit 840e7121993a48a9070b91db40dc91a3261426ee +Author: Alice (BadakinaVV) +Date: Sun Mar 23 20:02:39 2025 +0300 + + build: добавлен файл проекта + +23. Просмотрела предпоследний коммит тремя способами: git show main~1, git show HEAD~1 и git show a5d82ce90dfe32041333829f70b8e6115cfc83ba +Вот один из примеров (использовала git show HEAD~1) + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git show HEAD~1 +commit a5d82ce90dfe32041333829f70b8e6115cfc83ba +Author: Alice (BadakinaVV) +Date: Sun Mar 23 20:41:00 2025 +0300 + + Добавлен вывод разности a и b + +diff --git a/main.cpp b/main.cpp +index 800d68c..8611536 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 = " << a + b << '\n'; ++cout << "A + B = " << a + b << '\n' ++ << "A - B = " << a - b << '\n'; + } + + +24.Просмотрела изменения в рабочей копии: + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git diff +diff --git a/.gitignore b/.gitignore +index b17cfd6..9d83ebf 100644 +--- a/.gitignore ++++ b/.gitignore +@@ -1,4 +1,3 @@ + /bin + /obj + *.layout +- +diff --git a/main.cpp b/main.cpp +index 8611536..28ace4e 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -8,5 +8,6 @@ int main() + int a, b; + cin >> a >> b; + cout << "A + B = " << a + b << '\n' +- << "A - B = " << a - b << '\n'; ++ << "A - B = " << a - b << '\n' ++ << "A * B = " << a * b << '\n'; + } + + +Команда git diff показала изменения в двух файлах — .gitignore и main.cpp. В .gitignore я удалила пустую строку в конце файла, и Git это отразил — строка со знаком минус показывает, что раньше она была. Теперь в файле осталось только три строки: /bin, /obj и *.layout. + +В main.cpp я добавила новый вывод — произведение двух чисел. Раньше cout заканчивался на разности (A - B), теперь я дописала ещё одну строку с A * B, и получилась одна общая инструкция вывода. В патче видно, что старая строка удалена (она помечена знаком -), а две новые добавлены (с +). Количество строк в этом участке тоже увеличилось — было 5, стало 6. + +25. Просмотрела изменения между самым первым коммитом и коммитом, добавляющим вывод разности. +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git diff 840e712 a5d82ce +diff --git a/main.cpp b/main.cpp +index b4392ec..8611536 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -4,6 +4,9 @@ using namespace std; + + int main() + { +- cout << "Hello world!" << endl; +- return 0; ++ cout << "Enter A and B: "; ++int a, b; ++cin >> a >> b; ++cout << "A + B = " << a + b << '\n' ++ << "A - B = " << a - b << '\n'; + } + +Видно, что файл main.cpp был изменен: удалён вывод строки "Hello world!" и завершение программы. Вместо этого добавлен ввод двух целых чисел с клавиатуры. Программа запрашивает ввод значений, а затем выводит результат их сложения и вычитания. + +26. Закоммитила изменения в рабочей копии (вывод произведения). +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add main.cpp + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m "Добавлен вывод произведения a и b" +[main 068ffe6] Добавлен вывод произведения a и b + 1 file changed, 2 insertions(+), 1 deletion(-) + +26. Создала ключ в командной строке. + +Microsoft Windows [Version 10.0.26100.3476] +(c) Корпорация Майкрософт (Microsoft Corporation). Все права защищены. + +C:\Users\Виктория>ssh-keygen +Generating public/private ed25519 key pair. +Enter file in which to save the key (C:\Users\Виктория/.ssh/id_ed25519): +Created directory 'C:\\Users\\\320\222\320\270\320\272\321\202\320\276\321\200\320\270\321\217/.ssh'. +Enter passphrase (empty for no passphrase): +Enter same passphrase again: +Your identification has been saved in C:\Users\Виктория/.ssh/id_ed25519 +Your public key has been saved in C:\Users\Виктория/.ssh/id_ed25519.pub +The key fingerprint is: +SHA256:148qNs3kI/BYAv/QTVTUeKIejnOAq21HsLR6Lw5BWlM vikki@Pro_Pactos +The key's randomart image is: ++--[ED25519 256]--+ +| E ooo | +| . . o o | +| + . . . o | +| +..+ . +. | +| . .+ *SB... | +| .O *.* o | +| .+ X B . . | +| o.* O =. | +| +.=.+.. | ++----[SHA256]-----+ + +C:\Users\Виктория> + +. +27. И привязала его + +vikki@Pro_Pactos MINGW64 ~/.ssh +$ eval $(ssh-agent -s) +Agent pid 1071 + +Далее загрузила ключ + +vikki@Pro_Pactos MINGW64 ~/.ssh +$ ssh-add +Identity added: /c/Users/Виктория/.ssh/id_ed25519 (vikki@Pro_Pactos) + +Отобразила открытый ключ командой: + +vikki@Pro_Pactos MINGW64 ~/.ssh +$ cat ~/.ssh/id_ed25519.pub +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMx+RdMc35piwbF/1Y6mnat0GqBgwNur6IPT2KFzfMe4 vikki@Pro_Pactos + + +Push существующего репозитория из командной строки + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git remote add origin http://uit.mpei.ru/git/BadakinaVV/cs-lab02.git + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git push -u origin main +warning: use of unencrypted HTTP remote URLs is not recommended; see https://aka.ms/gcm/unsaferemotes for more information. +Enumerating objects: 18, done. +Counting objects: 100% (18/18), done. +Delta compression using up to 16 threads +Compressing objects: 100% (16/16), done. +Writing objects: 100% (18/18), 2.41 KiB | 411.00 KiB/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/BadakinaVV/cs-lab02.git + * [new branch] main -> main +branch 'main' set up to track 'origin/main'. + +28. Отобразила адрес командой git remote -v +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git remote -v +origin http://uit.mpei.ru/git/BadakinaVV/cs-lab02.git (fetch) +origin http://uit.mpei.ru/git/BadakinaVV/cs-lab02.git (push) + +Клонировала проект + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob +$ git clone http://uit.mpei.ru/git/BadakinaVV/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. + +29. Перешла в project +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob +$ cd project + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ + +30. «На машине Боба» настроила Git (git config) +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git config user.name 'Bob (BadakinaVV)' + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git config user.email 'BadakinaVV@mpei.ru' + +31. Изменила строку в коде от лица Боба + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git add main.cpp + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git commit -m "Боб убрал пробелы в тексте о произведении" +[main 6a19a2a] Боб убрал пробелы в тексте о произведении + 1 file changed, 1 insertion(+), 1 deletion(-) + +32. Сделали откат действия боба +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git reset --hard HEAD~1 +HEAD is now at 068ffe6 Добавлен вывод произведения a и b + +33. коммит для алисы для деления +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add main.cpp + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m 'Добавлен вывод деления а и b' +[main 3e4f147] Добавлен вывод деления а и b + 1 file changed, 2 insertions(+), 1 deletion(-) + +34. отправила на сервер от лица Алисы +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git push +Enumerating objects: 5, done. +Counting objects: 100% (5/5), done. +Delta compression using up to 16 threads +Compressing objects: 100% (3/3), done. +Writing objects: 100% (3/3), 418 bytes | 418.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/BadakinaVV/cs-lab02.git + 068ffe6..3e4f147 main -> main + +35. Боб получил данные +vikki@Pro_Pactos 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), 398 bytes | 12.00 KiB/s, done. +From http://uit.mpei.ru/git/BadakinaVV/cs-lab02 + 068ffe6..3e4f147 main -> origin/main + +36. Просмотрела историю всех веток: +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git log --oneline --decorate --all --graph +* 3e4f147 (origin/main, origin/HEAD) Добавлен вывод деления а и b +* 068ffe6 (HEAD -> main) Добавлен вывод произведения a и b +* 31214c2 git: добавлен .gitignore для исключения лишних файлов +* a5d82ce Добавлен вывод разности a и b +* a60f229 Добавлен вывод суммы a и b +* 840e712 build: добавлен файл проекта +* b1eae65 code: заготовка программы + +37. Продвинула ветку к скачанной версии +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git pull --ff-only +Updating 068ffe6..3e4f147 +Fast-forward + main.cpp | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +38. Боб сделал коммит по исправлению пробелов в строке. + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git add main.cpp + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git commit -m 'Исправил пробелы в строке с делением' +[main 5af0a12] Исправил пробелы в строке с делением + 1 file changed, 1 insertion(+), 1 deletion(-) + +39.Боб отправил коммит на сервер. +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git push +Enumerating objects: 5, done. +Counting objects: 100% (5/5), done. +Delta compression using up to 16 threads +Compressing objects: 100% (3/3), done. +Writing objects: 100% (3/3), 424 bytes | 424.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/BadakinaVV/cs-lab02.git + 3e4f147..5af0a12 main -> main + +40. На машине Алисы была выполнена загрузка изменений + +vikki@Pro_Pactos 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), 404 bytes | 25.00 KiB/s, done. +From http://uit.mpei.ru/git/BadakinaVV/cs-lab02 + 3e4f147..5af0a12 main -> origin/main + +Просмотрена история всех веток +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --oneline --decorate --all --graph +* 5af0a12 (origin/main, origin/HEAD) Исправил пробелы в строке с делением +* 3e4f147 (HEAD -> main) Добавлен вывод деления а и b +* 068ffe6 Добавлен вывод произведения a и b +* 31214c2 git: добавлен .gitignore для исключения лишних файлов +* a5d82ce Добавлен вывод разности a и b +* a60f229 Добавлен вывод суммы a и b +* 840e712 build: добавлен файл проекта +* b1eae65 code: заготовка программы + +Ветка продвинута к скачанной версии +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git pull --ff-only +Updating 3e4f147..5af0a12 +Fast-forward + main.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +41. Дополнила программу печатью максимума, сделала коммит и отправила его на сервер от лица Алисы. +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add main.cpp + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m 'Добавила печать максимума из чисел' +[main 631a634] Добавила печать максимума из чисел + 1 file changed, 3 insertions(+) + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git push +Enumerating objects: 5, done. +Counting objects: 100% (5/5), done. +Delta compression using up to 16 threads +Compressing objects: 100% (3/3), done. +Writing objects: 100% (3/3), 463 bytes | 463.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/BadakinaVV/cs-lab02.git + 5af0a12..631a634 main -> main + +42.Дополнила программу печатью минимум, сделала коммит и отправила его на сервер от лица Боба. Произошла ошибка. +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git add main.cpp + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git commit -m 'Добавил печать минимума из чисел' +[main fda2adb] Добавил печать минимума из чисел + 1 file changed, 3 insertions(+) + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git push +To http://uit.mpei.ru/git/BadakinaVV/cs-lab02.git + ! [rejected] main -> main (fetch first) +error: failed to push some refs to 'http://uit.mpei.ru/git/BadakinaVV/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. + +43. Боб Получил последнюю версию. +vikki@Pro_Pactos 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), 443 bytes | 27.00 KiB/s, done. +From http://uit.mpei.ru/git/BadakinaVV/cs-lab02 + 5af0a12..631a634 main -> origin/main + +44. Отобразила историю всех веток +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git log --oneline --decorate --all --graph +* fda2adb (HEAD -> main) Добавил печать минимума из чисел +| * 631a634 (origin/main, origin/HEAD) Добавила печать максимума из чисел +|/ +* 5af0a12 Исправил пробелы в строке с делением +* 3e4f147 Добавлен вывод деления а и b +* 068ffe6 Добавлен вывод произведения a и b +* 31214c2 git: добавлен .gitignore для исключения лишних файлов +* a5d82ce Добавлен вывод разности a и b +* a60f229 Добавлен вывод суммы a и b +* 840e712 build: добавлен файл проекта +* b1eae65 code: заготовка программы + +45. Бобу нужно переместить свой коммит поверх коммита Алисы, то есть поверх origin/main: +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git rebase origin/main +Auto-merging main.cpp +CONFLICT (content): Merge conflict in main.cpp +error: could not apply fda2adb... Добавил печать минимума из чисел +hint: Resolve all conflicts manually, mark them as resolved with +hint: "git add/rm ", then run "git rebase --continue". +hint: You can instead skip this commit: run "git rebase --skip". +hint: To abort and get back to the state before "git rebase", run "git rebase --abort". +hint: Disable this message with "git config set advice.mergeConflict false" +Could not apply fda2adb... Добавил печать минимума из чисел + +После выполнения команды git rebase origin/main возник конфликт в файле main.cpp, о чём Git сообщил в терминале. + +46. Просмотрела состояние хранилища: +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main|REBASE 1/1) +$ git status +interactive rebase in progress; onto 631a634 +Last command done (1 command done): + pick fda2adb Добавил печать минимума из чисел +No commands remaining. +You are currently rebasing branch 'main' on '631a634'. + (fix conflicts and then run "git rebase --continue") + (use "git rebase --skip" to skip this patch) + (use "git rebase --abort" to check out the original branch) + +Unmerged paths: + (use "git restore --staged ..." to unstage) + (use "git add ..." to mark resolution) + both modified: main.cpp + +no changes added to commit (use "git add" and/or "git commit -a") + +Команда git status показала следующее: + +interactive rebase in progress — означает, что в данный момент выполняется rebase. + +onto 631a634 — ветка main пытается быть переписанной относительно коммита с хэшем 631a634 (коммит Алисы). + +Last command done: pick fda2adb — это означает, что Git попытался применить коммит Боба с сообщением «Добавил печать минимума из чисел». + +No commands remaining — больше коммитов для применения не осталось, но текущий коммит не был применён из-за конфликта. + +Unmerged paths: both modified: main.cpp — файл main.cpp был изменён как в локальном коммите Боба, так и в коммитах Алисы, и Git не смог автоматически объединить изменения. + +no changes added to commit — Git ожидает, что пользователь вручную разрешит конфликт в файле main.cpp и добавит его в индекс с помощью команды git add, чтобы продолжить процесс. + +47. Боб добавил печать минимума из чисел + +# Conflicts: +# main.cpp + +# Please enter the commit message for your changes. Lines starting +# with '#' will be ignored, and an empty message aborts the commit. +# +# interactive rebase in progress; onto 631a634 +# Last command done (1 command done): +# pick fda2adb Добавил печать минимума из чисел +# No commands remaining. +# You are currently rebasing branch 'main' on '631a634'. +# +# Changes to be committed: +# modified: main.cpp +# +~ ~ ~ ~ ~ ~ .git/COMMIT_EDITMSG [unix] (16:23 31/03/2025) 17,1 All + +Вышли из продвинутого редактора Vim +[detached HEAD 71d5ee2] Добавил печать минимума из чисел + 1 file changed, 9 insertions(+), 3 deletions(-) +Successfully rebased and updated refs/heads/main. + + +48. Удостоверилась, что история хранилища соответствует коммитам. +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git status +On branch main +Your branch is ahead of 'origin/main' by 1 commit. + (use "git push" to publish your local commits) + +nothing to commit, working tree clean + +49. Отправила от лица боба на сервер: + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/bob/project (main) +$ git push +Enumerating objects: 5, done. +Counting objects: 100% (5/5), done. +Delta compression using up to 16 threads +Compressing objects: 100% (3/3), done. +Writing objects: 100% (3/3), 487 bytes | 487.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/BadakinaVV/cs-lab02.git + 631a634..71d5ee2 main -> main + +50. Создала ветку double на машине Алисы и перешла на нее. + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git branch double + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git checkout double +M .gitignore +Switched to branch 'double' + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (double) + +51. Отправила изменения от лица Алисы. +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/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), 467 bytes | 29.00 KiB/s, done. +From http://uit.mpei.ru/git/BadakinaVV/cs-lab02 + 631a634..71d5ee2 main -> origin/main +Updating 631a634..71d5ee2 +Fast-forward + main.cpp | 12 +++++++++--- + 1 file changed, 9 insertions(+), 3 deletions(-) + +Создала коммит от лица Алисы + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (double) +$ git add main.cpp + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (double) +$ git commit -m 'Изменила тип на double' +[double 8e13f34] Изменила тип на double + 1 file changed, 1 insertion(+), 1 deletion(-) + +52. перешла на ветку main +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (double) +$ git checkout main +M .gitignore +Switched to branch 'main' +Your branch is up to date with 'origin/main'. + +53. Решила возникший конфликт и вышла из вим редактора, посмотрела историю изменений. + +vikki@Pro_Pactos MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log +commit 6c728b96727c2714b978777dacea3cdb0d769658 (HEAD -> main) +Merge: 71d5ee2 8e13f34 +Author: Alice (BadakinaVV) +Date: Mon Mar 31 17:02:21 2025 +0300 + + Merge branch 'double' + +commit 8e13f34b6004e3583d1d93509aabc8f51d3cb1d2 (double) +Author: Alice (BadakinaVV) +Date: Mon Mar 31 16:57:49 2025 +0300 + + Изменила тип на double + +commit 654190f20bac2ddd5bb92e26ebbd26ea0466f409 +Author: Alice (BadakinaVV) +Date: Mon Mar 31 16:42:43 2025 +0300 + + Изменила тип на double + +commit 71d5ee221441ab4f3eda60dab864b050d38b78d9 (origin/main, origin/HEAD) +Author: Bob (BadakinaVV) +Date: Mon Mar 31 16:09:13 2025 +0300 + + Добавил печать минимума из чисел + +commit 631a63403e9e1bffb223ca6b0a2f889a53130ca9 +Author: Alice (BadakinaVV) +Date: Mon Mar 31 16:00:38 2025 +0300 + + Добавила печать максимума из чисел + +commit 5af0a123e205b181becd0a91adbd7a6a96152523 +Author: Bob (BadakinaVV) +Date: Mon Mar 24 17:10:29 2025 +0300 + + Исправил пробелы в строке с делением + +commit 3e4f1475d1a56d39279daf97fd1f2ce8c78863b5 +Author: Alice (BadakinaVV) +Date: Mon Mar 24 17:00:35 2025 +0300 + + Добавлен вывод деления а и b + +commit 068ffe647a7fc0d12080503decc627b6b176a15e +Author: Alice (BadakinaVV) +Date: Mon Mar 24 13:32:26 2025 +0300 + + Добавлен вывод произведения a и b + +commit 31214c2055c4ff2fe7487c22e1f31256dbccc705 +Author: Alice (BadakinaVV) +Date: Sun Mar 23 20:58:21 2025 +0300 + + git: добавлен .gitignore для исключения лишних файлов + +commit a5d82ce90dfe32041333829f70b8e6115cfc83ba +Author: Alice (BadakinaVV) +Date: Sun Mar 23 20:41:00 2025 +0300 + + Добавлен вывод разности a и b + +commit a60f2298fc8938df216de7e4a1d7f484358db44d +Author: Alice (BadakinaVV) +Date: Sun Mar 23 20:19:32 2025 +0300 +: + +это конец.