diff --git a/README.txt b/README.txt new file mode 100644 index 0000000..15bb22d --- /dev/null +++ b/README.txt @@ -0,0 +1,733 @@ +Отчет по лабораторной работе № 2 "Система контроля версий Git" + +Выполнил: Самашов В. В. +Группа: А-01-022 +Проверил: + +Примечание: работа выполнялась на Windows. + +1. Создал в своей папке каталог lab02 и запустил в ней Git Bash, приглашение: + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02 +$ + +2. Просмотрел файлы в рабочем каталоге можно командой "ls" --- пусто: + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02 +$ ls + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02 +$ + +3. Создал каталоги Алисы и Боба, создал каталог "project", изучил команду "cd" в процессе: + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02 +$ mkdir alice + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02 +$ mkdir bob + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02 +$ cd bob + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob +$ cd .. + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02 +$ cd alice + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice +$ mkdir project + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice +$ ls +project + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice +$ cd project + +4. Инициализировал репозитарий для alice/project + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project +$ git init +Initialized empty Git repository in D:/Programming/MPEI/lab02/alice/project/.git/ + +5. Настроил репозитарий Алисы, чтобы коммиты были от ее имени + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (master) +$ git config user.name 'Alice (SamashovVV)' + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (master) +$ git config user.email 'SamashovVV@mpei.ru' + +6. Создал файл main.cpp в папке alice/project (не использую CodeBlocks) + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (master) +$ touch main.cpp + +7. Узнал статус репозитория +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (master) +$ git status +On branch master // Уведомляет о том, на какой ветке мы в данный момент + +No commits yet // Уведомляет о том, что ещё не было коммитов + +Untracked files: // Начинает перечислять файлы, которые не добавлены в индекс + (use "git add ..." to include in what will be committed) // Подсказка для добавления файла в индекс + main.cpp // Наш файл + +nothing added to commit but untracked files present (use "git add" to track) // Уведомляет, что ещё ничего не было добавлено в индекс, но есть недобавленные файлы + +8. Добавил в индекс файл main.cpp + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (master) +$ git add main.cpp + +9. Снова проверил статус репозитория + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/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 + +10. Выполнил коммит с файлом main.cpp и сообщением + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (master) +$ git commit -m 'code: заготовка программы' +[master (root-commit) 73edd9a] code: заготовка программы + 1 file changed, 0 insertions(+), 0 deletions(-) + create mode 100644 main.cpp + +11. Изменил название ветки с master на main + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (master) +$ git branch -m main + +11. Тк не использую CodeBlocks создал пустой файл project.cbp + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ touch project.cbp + +12. Добавил его в коммит + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git add project.cbp + +13. Сделал коммит с сообщением + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git commit -m 'build: добавлен файл проекта' +[main ef6ea8e] build: добавлен файл проекта + 1 file changed, 0 insertions(+), 0 deletions(-) + create mode 100644 project.cbp + +14. Изменил программу на ввод двух чисел, проверил статус репозитория + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/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 // Пишется, что не новый файл создан, а что изменён существующий + +no changes added to commit (use "git add" and/or "git commit -a") + +15. Добавил в программу вычисление суммы двух чисел и их разность + + cout << "Enter A and B: "; + int a, b; + cin >> a >> b; + + int sum = a + b; + cout << "A + B = " << a + b << '\n' + << "A - B = " << a - b << '\n'; + + return 0; + +16. Сделал коммит с комментарием + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git commit -m 'code: добавлен вывод суммы и разности двух чисел' +[main eca324a] code: добавлен вывод суммы и разности двух чисел + 1 file changed, 20 insertions(+) + + +17. Создал пустые папки bin и obj, создал файл .gitignore и добавил в него игнорирующие файлы и папки +/bin +/obj +*.cbp +*.vscode + +18. Проверил статус репозитория + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git status +On branch main +Untracked files: // Появился файл .gitignore + (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. Добавил файл в индекс и сделал коммит с комментарием + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git add .gitignore + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git commit -m 'git: добавлен файл .gitignore' +[main b5cbe2a] git: добавлен файл .gitignore + 1 file changed, 4 insertions(+) + create mode 100644 .gitignore + +20. Попробовал команды для просмотра истории + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git log --stat +commit b5cbe2a4680096e047f035afce5eb347f93f6dc7 (HEAD -> main) // пишет хэш коммита +Author: Alice (SamashovVV) // указывает автора коммита +Date: Sun Mar 26 19:53:05 2023 +0300 // указывает дату коммита + + git: добавлен файл .gitignore // пишет наш комментарий к коммиту + + .gitignore | 4 ++++ // указывает количество изменений для файла (4 строчки) + 1 file changed, 4 insertions(+) // 1 файл изменён, 4 изменения добавлено + +commit eca324a3d58021128610c6c880fc8adb2f02f764 +Author: Alice (SamashovVV) +Date: Sun Mar 26 19:51:19 2023 +0300 + + code: добавлен вывод суммы и разности двух чисел + + main.cpp | 20 ++++++++++++++++++++ + 1 file changed, 20 insertions(+) + +commit ef6ea8e24ba5d147458a947fa0f9c36e6f8eb76d +Author: Alice (SamashovVV) +Date: Sun Mar 26 19:34:31 2023 +0300 + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git log --oneline --decorate +b5cbe2a (HEAD -> main) git: добавлен файл .gitignore +eca324a code: добавлен вывод суммы и разности двух чисел +ef6ea8e build: добавлен файл проекта +73edd9a code: заготовка программы + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git log --oneline --decorate --all --graph +* b5cbe2a (HEAD -> main) git: добавлен файл .gitignore +* eca324a code: добавлен вывод суммы и разности двух чисел +* ef6ea8e build: добавлен файл проекта +* 73edd9a code: заготовка программы + +21. Попробовал фильтр коммитов + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git log --grep "build:" +commit ef6ea8e24ba5d147458a947fa0f9c36e6f8eb76d +Author: Alice (SamashovVV) +Date: Sun Mar 26 19:34:31 2023 +0300 + + build: добавлен файл проекта + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git log -- project.cbp +commit ef6ea8e24ba5d147458a947fa0f9c36e6f8eb76d +Author: Alice (SamashovVV) +Date: Sun Mar 26 19:34:31 2023 +0300 + + build: добавлен файл проекта + +22. Просмотрел содержимое предпоследнего коммита + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git show HEAD~1 +commit eca324a3d58021128610c6c880fc8adb2f02f764 +Author: Alice (SamashovVV) +Date: Sun Mar 26 19:51:19 2023 +0300 + + code: добавлен вывод суммы и разности двух чисел + +diff --git a/main.cpp b/main.cpp +index e69de29..722a78f 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -0,0 +1,20 @@ ++#include ++#include ++ ++using namespace std; ++ ++int main(){ ++ + +23. Добавил в программу вывод умножения и просмотрел изменения в рабочей копии + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git diff +diff --git a/main.cpp b/main.cpp // Изменения в файлах, не добавленных в индекс. Сравнение происходит с последним коммитом +index 722a78f..deeca31 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -14,7 +14,8 @@ int main(){ + + int sum = 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; + } +\ No newline at end of file + +24. Просмотрел изменения между самым первым коммитом и коммитом, добавляющим вывод разности + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git diff 73edd9a HEAD~1 +diff --git a/main.cpp b/main.cpp +index e69de29..722a78f 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -0,0 +1,20 @@ ++#include ++#include ++ ++using namespace std; ++ ++int main(){ ++ ++ cout << "Enter A and B: "; ++ int a, b; ++ cin >> a >> b; ++ ++ int sum = a + b; ++ cout << "A + B = " << a + b << '\n' + +25. Добавил в индекс изменения main.cpp по выводу произведения и сделал коммит с комментарием + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git add main.cpp + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git commit -m 'code: добавлен вывод произведения' +[main d2165ff] code: добавлен вывод произведения + 1 file changed, 2 insertions(+), 4 deletions(-) + +26. Проверил откат изменений в git, добавил строчку с комментарием в main.cpp и сделал откат до последнего коммита + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git checkout HEAD -- main.cpp + +27. Создал ключ и запустил агента + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ ssh-keygen +Generating public/private rsa key pair. +Enter file in which to save the key (/c/Users/gamep/.ssh/id_rsa): +... + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ eval $(ssh-agent -s) +Agent pid 2404 + +28. Просмотрел созданный ключ + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ cat ~/.ssh/id_rsa.pub +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDBAmLgpaLDr7HlQ/waDVENT2P7D1A+wruKTppZzXuhlnF06Gj1qtgNwcj+bUrl2wzDDCzCdXsOsu8el3QEXZZcefPz0iiS0reG2U4szMc9o4wftdsXfRASVN60q/fYLfwOAOP7L9LdoPftOETfeSYIwgglmApyhDm8lGZyPmYCdSFLYBp0xyvQc0qFuxt/YMBJm3UsyhGeG23s+GeH5nCqWC086LDJD1s080+plZlXxcRuVm1UnFl/vfXaV/eqdAULl0Mt5VWBoHPxBVxTFgzk3yGLjUb/Gxhh50V6//yBkczeae+c5v9NkPkXNTqczZSx/LLiwLTnq/jKaQge7BtjgGoS2NJDHA6aMI6N9ReXv16FKPNXP4CA2bQ+MTd59kJtyxzjzxP+xw4F9xFHmtYSjLXSIOxvtlH6+/IBcH8oO+JNN2mafVh/ti9niU3IXJBfoN0EX5KG/k3NXA/gay3PZlF0OLKzBOif/uxaExTu2MU9nhWngAeRVRkedCPZpVM= gamep@DESKTOP-SNOE5DP + +29. Отправил проект на сервер + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) + +$ git remote add origin git@uit.mpei.ru:SamashovVV/cs-lab02.git +error: remote origin already exists. // По ошибке после отправки на сервер закрыл консоль не сохранив ответ, поэтому пишет что связь уже создана + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git push -u origin main +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +Everything up-to-date // По этой же причине пишет, что нечего обновлять, потому что перед этим уже сделал push +branch 'main' set up to track 'origin/main'. + +30. С консоли Боба сделал git clone + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/ (main) +$ git clone git@uit.mpei.ru:SamashovVV/cs-lab02.git project +Cloning into 'project'... +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +remote: Enumerating objects: 14, done. +remote: Counting objects: 100% (14/14), done. +remote: Compressing objects: 100% (11/11), done. +remote: Total 14 (delta 1), reused 0 (delta 0), pack-reused 0 +Receiving objects: 100% (14/14), done. +Resolving deltas: 100% (1/1), done. + +31. Перешёл в папку project + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob +$ cd project + + +32. Настроил git config для Боба + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main) +$ git config user.name 'Bob (SamashovVV)' + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main) +$ git config user.email 'SamashovVV@mpei.ru' + +33. Добавил вывод частного в программу и сделал push от имени Боба + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main) +$ git commit -a -m 'code: добавлен вывод частного' +[main 1f3fdb9] code: добавлен вывод частного + 1 file changed, 2 insertions(+), 1 deletion(-) + +34. Сделал push от имени Боба + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main) +$ git push +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +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), 431 bytes | 431.00 KiB/s, done. +Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 +remote: . Processing 1 references +remote: Processed 1 references in total +To uit.mpei.ru:SamashovVV/cs-lab02.git + d2165ff..1f3fdb9 main -> main + +35. В консоли Алисы выполнил загрузку изменений + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git fetch +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +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), 411 bytes | 51.00 KiB/s, done. +From uit.mpei.ru:SamashovVV/cs-lab02 + d2165ff..1f3fdb9 main -> origin/main + +36. Просмотрел историю всех веток + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git log --oneline --decorate --all --graph +* 1f3fdb9 (origin/main) code: добавлен вывод частного +* d2165ff (HEAD -> main) code: добавлен вывод произведения +* b5cbe2a git: добавлен файл .gitignore +* eca324a code: добавлен вывод суммы и разности двух чисел +* ef6ea8e build: добавлен файл проекта +* 73edd9a code: заготовка программы + +37. Продвинул ветку main к скачанной версии + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git pull --ff-only +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +Updating d2165ff..1f3fdb9 +Fast-forward + main.cpp | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + + +Из-за моей ошибки, я закоммитил умножение от Алисы в прошлом, когда этого делать не нужно было, а деление - от Боба, поэтому от Алисы я добавлю остаток от деления A на B. + +38. Добавил вывод деления на машине Алисы и сделал commit + push + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git commit -a -m 'code: Добавлен вывод остатка от деления A на B' +[main 93e164c] code: Добавлен вывод остатка от деления A на B + 1 file changed, 2 insertions(+), 1 deletion(-) + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git push +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +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), 431 bytes | 431.00 KiB/s, done. +Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 +remote: . Processing 1 references +remote: Processed 1 references in total +To uit.mpei.ru:SamashovVV/cs-lab02.git + 1f3fdb9..93e164c main -> main + + +39. За Боба загрузил изменения и продвинул main к скачанной версии + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main) +$ git fetch +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +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), 411 bytes | 68.00 KiB/s, done. +From uit.mpei.ru:SamashovVV/cs-lab02 + 1f3fdb9..93e164c main -> origin/main + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main) +$ git pull --ff-only +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +error: Your local changes to the following files would be overwritten by merge: + main.cpp +Please commit your changes or stash them before you merge. +Aborting +Updating 1f3fdb9..93e164c + +40. Синхронизирую у Алисы и Боба такой код: +cout << "A + B = " << a + b << '\n' + << "A - B = " << a - b << '\n' + << "A * B = " << a * b << '\n' + << "A / B = " << a / b << '\n'; + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git commit -a -m 'code: синхронизация правильного кода' +[main 3836dde] code: синхронизация правильного кода + 1 file changed, 3 insertions(+), 4 deletions(-) + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git push +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +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), 415 bytes | 415.00 KiB/s, done. +Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 +remote: . Processing 1 references +remote: Processed 1 references in total +To uit.mpei.ru:SamashovVV/cs-lab02.git + 93e164c..3836dde main -> main + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main) +$ git fetch +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +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), 395 bytes | 43.00 KiB/s, done. +From uit.mpei.ru:SamashovVV/cs-lab02 + 93e164c..3836dde main -> origin/main + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main) +$ git pull --ff-only +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +error: Your local changes to the following files would be overwritten by merge: + main.cpp +Please commit your changes or stash them before you merge. +Aborting +Updating 1f3fdb9..3836dde + +41. За Алису добавил вывод максимума и отправил на сервер + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git commit -a -m 'code: Добавлен вывод максимума' +[main f0bb690] code: Добавлен вывод максимума + 1 file changed, 5 insertions(+) + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git push +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +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), 441 bytes | 441.00 KiB/s, done. +Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 +remote: . Processing 1 references +remote: Processed 1 references in total +To uit.mpei.ru:SamashovVV/cs-lab02.git + 3836dde..f0bb690 main -> main + +42. Добавил за Боба вывод минимума и попытался сделать push + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main) +$ git commit -a -m 'code: Добавлен вывод минимума' +[main 1f05ac5] code: Добавлен вывод минимума + 1 file changed, 8 insertions(+), 3 deletions(-) + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main) +$ git push +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +To uit.mpei.ru:SamashovVV/cs-lab02.git + ! [rejected] main -> main (fetch first) // Git пишет, что отказано и сначала нужно загрузить изменения +error: failed to push some refs to 'uit.mpei.ru:SamashovVV/cs-lab02.git' +hint: Updates were rejected because the remote contains work that you do // Уведомляет, что отказано потому, что на сервере есть изменения, которых нет локально +hint: not have locally. This is usually caused by another repository pushing +hint: to the same ref. You may want to first integrate the remote changes +hint: (e.g., 'git pull ...') before pushing again. +hint: See the 'Note about fast-forwards' in 'git push --help' for details. + +43. Выполнил загрузку изменений за Боба и отобразил историю всех веток + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main) +$ git fetch +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +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), 421 bytes | 84.00 KiB/s, done. +From uit.mpei.ru:SamashovVV/cs-lab02 + 3836dde..f0bb690 main -> origin/main + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main) +$ git log --oneline --decorate --all --graph +* 1f05ac5 (HEAD -> main) code: Добавлен вывод минимума +| * f0bb690 (origin/main, origin/HEAD) code: Добавлен вывод максимума +| * 3836dde code: синхронизация правильного кода +| * 93e164c code: Добавлен вывод остатка от деления A на B +|/ +* 1f3fdb9 code: добавлен вывод частного +* d2165ff code: добавлен вывод произведения +* b5cbe2a git: добавлен файл .gitignore +* eca324a code: добавлен вывод суммы и разности двух чисел +* ef6ea8e build: добавлен файл проекта +* 73edd9a code: заготовка программы + +44. От Боба перемещаем свой коммит поверх коммита Алисы и получаем ошибку + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main) +$ git rebase origin/main +Auto-merging main.cpp +CONFLICT (content): Merge conflict in main.cpp // Пишет об ошибке конфликтования файла main.cpp в разных ветках +error: could not apply 1f05ac5... code: Добавлен вывод минимума +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". +Could not apply 1f05ac5... code: Добавлен вывод минимума + +45. Отредактировал код так, что бы он включал изменения и Алисы и Боба (на машине Боба), продолжил перемещение коммита + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main|REBASE 1/1) +$ git add main.cpp + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main|REBASE 1/1) +$ git rebase --continue +[detached HEAD 1187150] code: Добавлен вывод минимума + 1 file changed, 5 insertions(+) +Successfully rebased and updated refs/heads/main. + +``` + if (a < b) + cout << a; + else + cout << b; + + if (a > b) + cout << a; + else + cout << b; +``` + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/bob/project (main) +$ git push +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +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 +remote: . Processing 1 references +remote: Processed 1 references in total +To uit.mpei.ru:SamashovVV/cs-lab02.git + f0bb690..1187150 main -> main + +46. На машине Алисы создаю ветку double и переключаюсь на неё + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git branch double + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git checkout double +Switched to branch 'double' + +47. Изменил в коде тип переменных и переключился обратно на ветку main + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (double) +$ git checkout main +Switched to branch 'main' +M main.cpp +Your branch is up to date with 'origin/main'. + +48. Синхронизировал ветку main с сервером Алисы + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git fetch +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +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 | 77.00 KiB/s, done. +From uit.mpei.ru:SamashovVV/cs-lab02 + f0bb690..1187150 main -> origin/main + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git commit -a -m 'code: синхронизация на машине Алисы' +[main d3a8626] code: синхронизация на машине Алисы + 1 file changed, 2 insertions(+), 2 deletions(-) + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git rebase origin/main +Successfully rebased and updated refs/heads/main. + +49. Объединил ветки и отправил на сервер и просмотрел историю веток + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git merge double +Auto-merging main.cpp +Merge made by the 'ort' strategy. + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git push +Enter passphrase for key '/c/Users/gamep/.ssh/id_rsa': +Enumerating objects: 16, done. +Counting objects: 100% (16/16), done. +Delta compression using up to 12 threads +Compressing objects: 100% (12/12), done. +Writing objects: 100% (12/12), 1.45 KiB | 1.45 MiB/s, done. +Total 12 (delta 5), reused 0 (delta 0), pack-reused 0 +remote: . Processing 1 references +remote: Processed 1 references in total +To uit.mpei.ru:SamashovVV/cs-lab02.git + 1187150..5b0ef64 main -> main + +gamep@DESKTOP-SNOE5DP MINGW64 /d/Programming/MPEI/lab02/alice/project (main) +$ git log --oneline --decorate --all --graph +* 5b0ef64 (HEAD -> main, origin/main) Merge branch 'double' +|\ +| * 997d3ad (double) code: исправления +* | a43bd52 code: исправления +|\| +| * c71c9e7 code: изменение на double +* | 805d967 code: исправление +* | cc9a9ad code: синхронизация на машине Алисы +* | 1187150 code: Добавлен вывод минимума +|/ +* f0bb690 code: Добавлен вывод максимума +* 3836dde code: синхронизация правильного кода +* 93e164c code: Добавлен вывод остатка от деления A на B +* 1f3fdb9 code: добавлен вывод частного +* d2165ff code: добавлен вывод произведения +* b5cbe2a git: добавлен файл .gitignore +* eca324a code: добавлен вывод суммы и разности двух чисел +* ef6ea8e build: добавлен файл проекта +* 73edd9a code: заготовка программы