diff --git a/otchet.txt b/otchet.txt new file mode 100644 index 0000000..0607ea6 --- /dev/null +++ b/otchet.txt @@ -0,0 +1,476 @@ +Отчет по лабораторной работе № 2 "Система контроля версий Git" +Выполнил: Сидора Дмитрий Андреевич +Группа: А-02-22 +Проверил: + +Примечание: работа выполнялась на Windows. + +1. Создал на рабочем столе каталог lab02 и запустил в нем Git Bash, приглашение: +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2 + +2. Просмотрел файлы в рабочем каталоге можно командой "ls" --- пусто: +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2 +$ ls +3. Создал каталоги Алисы и Боба, создал каталог "project", +изучил команду "cd" в процессе: + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2 +$ mkdir alice + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2 +$ mkdir bob + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2 +$ cd alice + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice +$ mkdir project +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice +$ cd .. +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2 +$ cd alice +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice +$ cd project + +4. Инициализировал репозитарий: + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project +$ git init +Initialized empty Git repository in C:/Users/nn110/OneDrive/Рабочий стол/laba2/alice/project/.git/ + +5. Поменял имя ветки на main + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (master) +$ git branch -m main + +Настроил репозитарий Алисы: +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git config user.name 'Alice (SidoraDA)' +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git config user.email 'SidoraDA@mpei.ru +6.Воспользовался командой git status, чтобы просмотреть состояние рабочей копии + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git status +On branch main // находимся на ветке main + +No commits yet // комиты отсутствуют + +Untracked files: // неотслеживаемые файлы + (use "git add ..." to include in what will be committed) + .vs/ + laba02.cpp + laba02.sln + laba02.vcxproj + laba02.vcxproj.filters + laba02.vcxproj.user + +nothing added to commit but untracked files present (use "git add" to track)// ничего не добавлено в комит, но представлены неотслеживаемые файлы +7.Добавил файл laba02.cpp в индекс название вместо project.cpp +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git add laba02.cpp + +8.Выполнил коммит с файлом laba02.cpp + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git commit -m 'code: заготовка программы' +[main (root-commit) 91c7889] code: заготовка программы + 1 file changed, 20 insertions(+) + create mode 100644 laba02.cpp + +9. Добавил файл laba02.sln в индекс +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git add laba02.sln + +10.Выполнил коммит с файлом laba02.sln +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git commit -m 'bild: добавлен файл проекта' +[main 7542915] bild: добавлен файл проекта + 1 file changed, 31 insertions(+) + create mode 100644 laba02.sln + +11.Закоммител изменения в файле +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git commit -a -m "добавление разницы" +[main 61af41c] добавление разницы + 1 file changed, 6 insertions(+), 11 deletions(-) + +12. Создал файл gitignore, внес его в индекс и закоммитил +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git commit -a -m "git создание .gitignore" +[main 3b38ec5] git создание .gitignore + 1 file changed, 363 insertions(+) + create mode 100644 .gitignore + + +13. Воспользовался командой для показа журнала репозитария + + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git log +commit 3b38ec5f3fb7ea95c21646e2b57ff8edda2538da (HEAD -> main) +Author: Alice (SidoraDA) +Date: Mon Mar 13 14:52:26 2023 +0300 + + git создание .gitignore + +commit 61af41c01b549c1bb5849d81fd467c5df3b466ba +Author: Alice (SidoraDA) +Date: Mon Mar 13 14:35:10 2023 +0300 + + добавление разницы + +commit 7542915a8a097edce7702fc9ef60f75ee7ec4e96 +Author: Alice (SidoraDA) +Date: Mon Mar 13 14:26:03 2023 +0300 + + bild: добавлен файл проекта + +commit 91c7889988753e37de1456c34133027582a64b69 +Author: Alice (SidoraDA) +Date: Mon Mar 13 14:20:57 2023 +0300 + + code: заготовка программы + +14.Просмотрел коммиты компактно +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git log --oneline --decorate --all --graph +* 3b38ec5 (HEAD -> main) git создание .gitignore +* 61af41c добавление разницы +* 7542915 bild: добавлен файл проекта +* 91c7889 code: заготовка программы + +15.Просмотрел коммиты связаные с laba02.cpp + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git log -- laba02.cpp +commit 61af41c01b549c1bb5849d81fd467c5df3b466ba +Author: Alice (SidoraDA) +Date: Mon Mar 13 14:35:10 2023 +0300 + + добавление разницы + +commit 91c7889988753e37de1456c34133027582a64b69 +Author: Alice (SidoraDA) +Date: Mon Mar 13 14:20:57 2023 +0300 + + code: заготовка программы +16. Посмотрел коммит с build у меня была опечатка, поэтому bild + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git log --grep "bild:" +commit 7542915a8a097edce7702fc9ef60f75ee7ec4e96 +Author: Alice (SidoraDA) +Date: Mon Mar 13 14:26:03 2023 +0300 + + bild: добавлен файл проекта +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git log -- laba02.sln +commit 7542915a8a097edce7702fc9ef60f75ee7ec4e96 +Author: Alice (SidoraDA) +Date: Mon Mar 13 14:26:03 2023 +0300 + + bild: добавлен файл проекта +17. Посмотрел предпоследний коммит +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git show HEAD~1 +commit 61af41c01b549c1bb5849d81fd467c5df3b466ba +Author: Alice (SidoraDA) +Date: Mon Mar 13 14:35:10 2023 +0300 + + добавление разницы + +diff --git a/laba02.cpp b/laba02.cpp +index 2739469..0af3468 100644 +--- a/laba02.cpp ++++ b/laba02.cpp +@@ -2,19 +2,14 @@ + // + + #include +- ++using namespace std; + int main() + { +- std::cout << "Hello World!\n"; ++ cout << "Enter A and B: "; ++ int a, b; ++ cin >> a >> b; ++ cout << "A + B = " << a + b << '\n' ++ << "A - B = " << a - b << '\n'; + } +18. Посмотрел изменения в laba02.cpp +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git diff +diff --git a/laba02.cpp b/laba02.cpp +index 0af3468..5812c48 100644 +--- a/laba02.cpp ++++ b/laba02.cpp +@@ -9,7 +9,8 @@ int main() + int a, b; + cin >> a >> b; + cout << "A + B = " << a + b << '\n' +- << "A - B = " << a - b << '\n'; ++ << "A - B = " << a - b << '\n'; ++ cout << "A * B = " << a * b << '\n'; + } +19. Посмотрел изменения самого первого коммита. +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git diff HEAD~1 HEAD~3 +diff --git a/laba02.cpp b/laba02.cpp +index 0af3468..2739469 100644 +--- a/laba02.cpp ++++ b/laba02.cpp +@@ -2,14 +2,19 @@ + // + + #include +-using namespace std; ++ + int main() + { +- cout << "Enter A and B: "; +- int a, b; +- cin >> a >> b; +- cout << "A + B = " << a + b << '\n' +- << "A - B = " << a - b << '\n'; ++ std::cout << "Hello World!\n"; + +20. откатился к предыдущему коммиту +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git reset --hard HEAD~1 +HEAD is now at 61af41c добавление разницы + +21. Убрал изменение в laba02.cpp +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git checkout HEAD -- laba02.cpp + +22.Создал пару ключей +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ ssh-keygen +Generating public/private rsa key pair. +Enter file in which to save the key (/c/Users/nn110/.ssh/id_rsa): +Created directory '/c/Users/nn110/.ssh'. +Enter passphrase (empty for no passphrase): +Enter same passphrase again: +Your identification has been saved in /c/Users/nn110/.ssh/id_rsa +Your public key has been saved in /c/Users/nn110/.ssh/id_rsa.pub +The key fingerprint is: +SHA256:CTK0eHyMNBZe9ucKDMDglm1xw7GXsVmU0LU06IYFOnQ nn110@LAPTOP-P049CSND +The key's randomart image is: ++---[RSA 3072]----+ +|.o..B*+E=o++ | +|. +O+O=.*=. o | +| +.oX++== .. | +|. .. *oo * | +| o S . | +| . . | +| . | +| | +| | ++----[SHA256]-----+ +22.Запустил агент +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ eval $(ssh-agent -s) +Agent pid 370 + +23. Загрузил ключ +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ ssh-add +Enter passphrase for /c/Users/nn110/.ssh/id_rsa: +Identity added: /c/Users/nn110/.ssh/id_rsa (nn110@LAPTOP-P049CSND) + +24. Отобразил открытй ключ +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ cat ~/.ssh/id_rsa.pub +ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDnmyrMCWui6fCT8OwHYJeDQ6j+p5oKGQClc7N1nTabfxCXLyj+Lg+O/KJE/BpN6PZNazGGJUFBZxLiDbdE/VUoCUoSCLFNdF30KmQNbImf6FRpmzCO0frriu80d0b1/rbyPt7fm28N02EJvThoQ313ZsKVrMLvJsrg9RKBWtZdjMi1ZbmmFQd3AUIuRWBS2jPwWPt4WqZ25t56hRJrsgDh8qVc5puqldJwHGj9jOCtl962uKEFV8wIVZzxAC2/YbqERSsO90foC5RusLcl0m56NHKbHIUqvPv7ompUKLjTptoSYo5imgo6M4+uuU0JbQW399lQQDXAw3PqfGovXtu3FJkV9l01IhNKgCNNU3T4Hvr2nvkJnqK8u0oujOfzhfB++Zr4Ix6N5Rrm3L8v0UnE4sxDkQELVIoYRXNFgZcjg+hD99WilKdaOK+688lN+i2yBVUHVbXqf4bujKHF1nsL9PoOJghDY7gklB3PXrqyrYIXQCvHrRcBotkrvecQlnE= nn110@LAPTOP-P049CSND + +25. добавил удаленный репозитарий +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git remote add origin http://uit.mpei.ru/git/SidoraDA/cs-lab02.git + +26. Загрузил ветку в удаленный репозитарий +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git push -u origin main +Enumerating objects: 9, done. +Counting objects: 100% (9/9), done. +Delta compression using up to 8 threads +Compressing objects: 100% (8/8), done. +Writing objects: 100% (9/9), 2.20 KiB | 322.00 KiB/s, done. +Total 9 (delta 0), reused 0 (delta 0), pack-reused 0 +remote: . Processing 1 references +remote: Processed 1 references in total +To http://uit.mpei.ru/git/SidoraDA/cs-lab02.git + * [new branch] main -> main +branch 'main' set up to track 'origin/main'. + +27. Скопировал проект в папку Боба +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git clone http://uit.mpei.ru/git/SidoraDA/cs-lab02.git project +Cloning into 'project'... +remote: Enumerating objects: 9, done. +remote: Counting objects: 100% (9/9), done. +remote: Compressing objects: 100% (8/8), done. +remote: Total 9 (delta 0), reused 0 (delta 0), pack-reused 0 +Receiving objects: 100% (9/9), done. + +28. Настроил репозитарий Боба +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main) +$ git config user.name 'Bob (SidoraDA)' + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main) +$ git config user.email 'SidoraDA@mpei.ru' + +29. Закоммитил изменения от боба +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main) +$ git commit -a -m "code: Усножение от боба" +[main 5789e27] code: Усножение от боба + 1 file changed, 2 insertions(+) + +30. Загрузил их в удаленный репозитарий +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/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), 413 bytes | 206.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 http://uit.mpei.ru/git/SidoraDA/cs-lab02.git + 011cce7..5789e27 main -> main + +31. Скачал изменения из удаленного репозитария в папку Алисы и закоммитил изменения +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git pull --ff-only +Updating 011cce7..5789e27 +Fast-forward + laba02.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git commit -a -m "добавление деления от Алисы" +[main d5d389b] добавление деления от Алисы + 1 file changed, 3 insertions(+), 2 deletions(-) + + +32. загрузил изменения на удаленный репозиторий +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/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), 422 bytes | 422.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 http://uit.mpei.ru/git/SidoraDA/cs-lab02.git + 5789e27..d5d389b main -> main +33. Загрузил изменения в папку Боба +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main) +$ git pull --ff-only +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), 402 bytes | 13.00 KiB/s, done. +From http://uit.mpei.ru/git/SidoraDA/cs-lab02 + 5789e27..d5d389b main -> origin/main +Updating 5789e27..d5d389b +Fast-forward + laba02.cpp | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) +34. Добавил максимум от Алисы +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git commit -a -m "добавление макс от Алисы" +[main a082a0b] добавление макс от Алисы + 1 file changed, 6 insertions(+), 1 deletion(-) +35. Отправил на сервер +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/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), 433 bytes | 216.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 http://uit.mpei.ru/git/SidoraDA/cs-lab02.git + d5d389b..a082a0b main -> main +36. Боб попытался загрузить изменения +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main) +$ git pull --ff-only +fatal: Not possible to fast-forward, aborting. + +37. Боб выполнил команду git rebase +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main) +$ git rebase origin/main +Auto-merging laba02.cpp +CONFLICT (content): Merge conflict in laba02.cpp +error: could not apply 2023f82... добавление min от Боба +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 2023f82... добавление min от Боба + 38. Добафил файл laba02.cpp в индекс и продолжил rebase +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main|REBASE 1/1) +$ git add laba02.cpp +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main|REBASE 1/1) +$ git rebase --continue +[detached HEAD a452f31] добавление min от Боба + 1 file changed, 10 insertions(+) +Successfully rebased and updated refs/heads/main. +39.Создал ветку в репозитарии Алисы и переключился на нее + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git branch double + +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git checkout double +Switched to branch 'double' + +40.Закоммитил изменения +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (double) +$ git commit -a -m "Алиса решила поменять тип" +[double 9a97b96] Алиса решила поменять тип + 1 file changed, 1 insertion(+), 1 deletion(-) + +41. Переключился на ветку main +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (double) +$ git checkout main +Switched to branch 'main' +Your branch is up to date with 'origin/main'. + +42. слил ветку double в main +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git merge double +Auto-merging laba02.cpp +Merge made by the 'ort' strategy. + laba02.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +43. Посмотрел дерево коммитов +nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main) +$ git log --oneline --decorate --all --graph +* 2354514 (HEAD -> main) Merge branch 'double' +|\ +| * 9a97b96 (double) Алиса решила поменять тип +* | a452f31 (origin/main) добавление min от Боба +|/ +* a082a0b добавление макс от Алисы +* d5d389b добавление деления от Алисы +* 5789e27 code: Усножение от боба +* 011cce7 git создание .gitignore +* 61af41c добавление разницы +* 7542915 bild: добавлен файл проекта +* 91c7889 code: заготовка программы + + + + +