Отчет по лабораторной работе № 2 "Система контроля версий Git" Выполнил: Грудинин Е.К. Группа: А-01-23 Примечание: работа выполнялась на Windows. 1. Создал на рабочем столе каталог lab02 с текстовым документом и запустил в нем Git Bash, приглашение: 2. Просмотр файлов в рабочем каталоге осуществляется командой "ls": $ ls README.txt 3. Создал каталоги Алисы и Боба, создал каталог "project", изучил команду перехода между каталогами "cd": Egor@HOME-PC MINGW64 ~/Desktop/lab02 $ mkdir alice Egor@HOME-PC MINGW64 ~/Desktop/lab02 $ mkdir bob Egor@HOME-PC MINGW64 ~/Desktop/lab02 $ cd alice Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice $ mkdir project Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice $ cd .. Egor@HOME-PC MINGW64 ~/Desktop/lab02 $ cd project bash: cd: project: No such file or directory Egor@HOME-PC MINGW64 ~/Desktop/lab02 $ cd alice Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice $ cd project 4. Инициализировал репозитарий и переименновываем ветку: Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project $ git init Initialized empty Git repository in C:/Users/Egor/Desktop/lab02/alice/project/.git/ Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (master) $ ls -A .git/ Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (master) $ git branch -m main 5. Настроил репозитарий Алисы, чтобы коммиты были от её имени и создал проект в CodeBlocks: Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git config user.name 'Alice (GrudininYK)' Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git config user.email 'GrudininYK@mpei.ru' git Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ ls -A .git/ bin/ main.cpp obj/ project.cbp 6.Проверил состояние рабочей папки Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git status On branch main (на ветке 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) (пока ничего не добавлено в отслеживание) 7. Начало отслеживания main.cpp и повторная проверка состояния. Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git add main.cpp Egor@HOME-PC 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 8. Создание первого коммита Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -m 'code: заготовка программы' [main (root-commit) e2b8df6] code: заготовка программы 1 file changed, 9 insertions(+) create mode 100644 main.cpp 9.Занесение project.cbp под гит (его отслеживание) и создание коммита с ним. Egor@HOME-PC 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 Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -m 'build: добавлен файл проекта' [main 3596418] build: добавлен файл проекта 1 file changed, 40 insertions(+) create mode 100644 project.cbp 10. Повторная проверка состояния Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git status On branch main Untracked files: (use "git add ..." to include in what will be committed) bin/ obj/ nothing added to commit but untracked files present (use "git add" to track) 11.Создание коммитов с изменениями разными способами. Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git add main.cpp Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -m "code: добавлен ввод чисел" [main eb54a99] code: добавлен ввод чисел 1 file changed, 3 insertions(+), 2 deletions(-) Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git add -u Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -m "добавлен вывод суммы" [main cc8bef5] добавлен вывод суммы 1 file changed, 1 insertion(+) Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -a -m "code: добавлен вывод разности" [main 031f2d1] code: добавлен вывод разности 1 file changed, 2 insertions(+), 1 deletion(-) 12. Создание .gitignore: 13. Игнорирование bin, obj, project.layout: Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git status On branch main Untracked files: (use "git add ..." to include in what will be committed) .gitignore obj/ project.depend nothing added to commit but untracked files present (use "git add" to track) Egor@HOME-PC 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) 14. Коммит для .gitignore Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git add .gitignore Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -m 'git: игнорирование файлов' [main 9dee190] git: игнорирование файлов 1 file changed, 3 insertions(+) create mode 100644 .gitignore 15. Команда просмотра журнала репозитария: git log --stat показывает файлы, измененные в коммитах. Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git log commit 9dee190bf3e5addb195859809c8e061308230899 (HEAD -> main) Author: Alice (GrudininYK) Date: Sun Apr 14 21:12:14 2024 +0300 git: игнорирование файлов commit 031f2d1405e37e865fb3eced87f51ceb9e1530b6 Author: Alice (GrudininYK) Date: Sun Apr 14 21:08:30 2024 +0300 code: добавлен вывод разности commit cc8bef5673ec935ab3a56bdbe686a121c665297a Author: Alice (GrudininYK) Date: Sun Apr 14 21:08:02 2024 +0300 добавлен вывод суммы commit eb54a99e54e110a6ef18698b10a3d85c202afcfc Author: Alice (GrudininYK) Date: Sun Apr 14 21:07:27 2024 +0300 code: добавлен ввод чисел commit 35964188e346fee8e07149bcf913093ff319608a Author: Alice (GrudininYK) Date: Sun Apr 14 21:05:13 2024 +0300 build: добавлен файл проекта commit e2b8df659395f02f8dad252efedf33649dddb2e4 Author: Alice (GrudininYK) Date: Sun Apr 14 21:03:24 2024 +0300 code: заготовка программы ------------------------------------------------------------------- Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --stat commit 9dee190bf3e5addb195859809c8e061308230899 (HEAD -> main) Author: Alice (GrudininYK) Date: Sun Apr 14 21:12:14 2024 +0300 git: игнорирование файлов .gitignore | 3 +++ 1 file changed, 3 insertions(+) commit 031f2d1405e37e865fb3eced87f51ceb9e1530b6 Author: Alice (GrudininYK) Date: Sun Apr 14 21:08:30 2024 +0300 code: добавлен вывод разности main.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit cc8bef5673ec935ab3a56bdbe686a121c665297a Author: Alice (GrudininYK) Date: Sun Apr 14 21:08:02 2024 +0300 добавлен вывод суммы main.cpp | 1 + 1 file changed, 1 insertion(+) commit eb54a99e54e110a6ef18698b10a3d85c202afcfc Author: Alice (GrudininYK) Date: Sun Apr 14 21:07:27 2024 +0300 code: добавлен ввод чисел main.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) commit 35964188e346fee8e07149bcf913093ff319608a Author: Alice (GrudininYK) Date: Sun Apr 14 21:05:13 2024 +0300 build: добавлен файл проекта project.cbp | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) commit e2b8df659395f02f8dad252efedf33649dddb2e4 Author: Alice (GrudininYK) Date: Sun Apr 14 21:03:24 2024 +0300 code: заготовка программы main.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) 16. команда git log --oneline --decorate (показывает коммиты компактно (--oneline), а также показывает ссылки, концы веток и тэги (--decorate).) Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --oneline --decorate 9dee190 (HEAD -> main) git: игнорирование файлов 031f2d1 code: добавлен вывод разности cc8bef5 добавлен вывод суммы eb54a99 code: добавлен ввод чисел 3596418 build: добавлен файл проекта e2b8df6 code: заготовка программы 17. команда git log --oneline --decorate --all --graph (делает то же для всех веток (--all), причем коммиты отображаются в терминале в виде дерева (--graph).) Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --oneline --decorate --all --graph * 9dee190 (HEAD -> main) git: игнорирование файлов * 031f2d1 code: добавлен вывод разности * cc8bef5 добавлен вывод суммы * eb54a99 code: добавлен ввод чисел * 3596418 build: добавлен файл проекта * e2b8df6 code: заготовка программы -------------------------------------------------------------------------------- Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git log -- main.cpp commit 031f2d1405e37e865fb3eced87f51ceb9e1530b6 Author: Alice (GrudininYK) Date: Sun Apr 14 21:08:30 2024 +0300 code: добавлен вывод разности commit cc8bef5673ec935ab3a56bdbe686a121c665297a Author: Alice (GrudininYK) Date: Sun Apr 14 21:08:02 2024 +0300 добавлен вывод суммы commit eb54a99e54e110a6ef18698b10a3d85c202afcfc Author: Alice (GrudininYK) Date: Sun Apr 14 21:07:27 2024 +0300 code: добавлен ввод чисел commit e2b8df659395f02f8dad252efedf33649dddb2e4 Author: Alice (GrudininYK) Date: Sun Apr 14 21:03:24 2024 +0300 code: заготовка программы 18. Просмотр коммитов по теме 'code: ' и "build: " Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --grep "code:" commit 031f2d1405e37e865fb3eced87f51ceb9e1530b6 Author: Alice (GrudininYK) Date: Sun Apr 14 21:08:30 2024 +0300 code: добавлен вывод разности commit eb54a99e54e110a6ef18698b10a3d85c202afcfc Author: Alice (GrudininYK) Date: Sun Apr 14 21:07:27 2024 +0300 code: добавлен ввод чисел commit e2b8df659395f02f8dad252efedf33649dddb2e4 Author: Alice (GrudininYK) Date: Sun Apr 14 21:03:24 2024 +0300 code: заготовка программы ---------------------------------------------------------------------- Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --grep "build:" commit 35964188e346fee8e07149bcf913093ff319608a Author: Alice (GrudininYK) Date: Sun Apr 14 21:05:13 2024 +0300 build: добавлен файл проекта 19. Просмотр коммитов, затрагивающих 'project.cbp' Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git log -- project.cbp commit 35964188e346fee8e07149bcf913093ff319608a Author: Alice (GrudininYK) Date: Sun Apr 14 21:05:13 2024 +0300 build: добавлен файл проекта 20.Просмотр последнего коммита через текущую ветку: Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git show HEAD commit 9dee190bf3e5addb195859809c8e061308230899 (HEAD -> main) Author: Alice (GrudininYK) Date: Sun Apr 14 21:12:14 2024 +0300 git: игнорирование файлов diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d85abef --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/bin +/obj +/*.layout 20.Просмотр последнего коммита по имени ветки: Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git show main commit 9dee190bf3e5addb195859809c8e061308230899 (HEAD -> main) Author: Alice (GrudininYK) Date: Sun Apr 14 21:12:14 2024 +0300 git: игнорирование файлов diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d85abef --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/bin +/obj +/*.layout 21.Просмотр последнего коммита через хеш: Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git show 9dee190 commit 9dee190bf3e5addb195859809c8e061308230899 (HEAD -> main) Author: Alice (GrudininYK) Date: Sun Apr 14 21:12:14 2024 +0300 git: игнорирование файлов diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d85abef --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/bin +/obj +/*.layout 22.Просмотр предпоследнего коммита через текущую ветку: Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git show HEAD~1 commit 031f2d1405e37e865fb3eced87f51ceb9e1530b6 Author: Alice (GrudininYK) Date: Sun Apr 14 21:08:30 2024 +0300 code: добавлен вывод разности diff --git a/main.cpp b/main.cpp index 4364dbc..65442c3 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'; } 23. Просмотр изменений Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git diff diff --git a/main.cpp b/main.cpp index 65442c3..67cc685 100644 --- a/main.cpp +++ b/main.cpp @@ -8,5 +8,7 @@ int main() int a, b; cin >> a >> b; cout << "A + B = " << a + b << '\n' - << "A - B = " << a - b << '\n'; + << "A - B = " << a - b << '\n' + << "A * B = " << a * b << '\n'; (добавлена печать произведения двух чисел.) + } Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git diff HEAD~2 diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d85abef --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/bin +/obj +/*.layout diff --git a/main.cpp b/main.cpp index 4364dbc..67cc685 100644 --- a/main.cpp +++ b/main.cpp @@ -7,5 +7,8 @@ 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' + << "A * B = " << a * b << '\n'; + } 24. Выявление различия между самым первым коммитом и коммитом вывода разности: Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --oneline 9dee190 (HEAD -> main) git: игнорирование файлов 031f2d1 code: добавлен вывод разности cc8bef5 добавлен вывод суммы eb54a99 code: добавлен ввод чисел 3596418 build: добавлен файл проекта e2b8df6 code: заготовка программы Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git diff 031f2d1 e2b8df6 diff --git a/main.cpp b/main.cpp index 65442c3..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' - << "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 @@ - - - - - - 25. Коммит печати произведения: Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -a -m 'code: вывод произведения' [main d21be3a] code: вывод произведения 1 file changed, 3 insertions(+), 1 deletion(-) 26. Откат коммита к предыдущему Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git reset --hard HEAD~1 HEAD is now at 9dee190 git: игнорирование файлов Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git checkout HEAD -- main.cpp 27. Обмен кодом через удаленное хранилище Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ ssh-keygen Generating public/private ed25519 key pair. Enter file in which to save the key (/c/Users/Egor/.ssh/id_ed25519): /c/Users/Egor/.ssh/id_ed25519 already exists. Overwrite (y/n)? y Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /c/Users/Egor/.ssh/id_ed25519 Your public key has been saved in /c/Users/Egor/.ssh/id_ed25519.pub The key fingerprint is: SHA256:vdl10GD2bVb3T9H1R0L+8uH965fvAJx6yPsapHCfTxM Egor@HOME-PC The key's randomart image is: +--[ED25519 256]--+ | .*.B| | + *O| | o @| | . . . *o| | . S o E o.+| | o = B +.+o| | . X = ..+| | * . oo| | ooo .+B| +----[SHA256]-----+ 28. Запуск агента: Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ eval $(ssh-agent -s) Agent pid 1077 29. Просмотр открытого ключа: Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ ssh-add Identity added: /c/Users/Egor/.ssh/id_ed25519 (Egor@HOME-PC) Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ cat ~/.ssh/id_ed25519.pub ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBkz4Ewn1rA3r0mRDL3/UGBOt43sX0tLiMet6KxVhMZ/ Egor@HOME-PC 30. Отправка проекта на сервер: Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git remote add origin http://uit.mpei.ru/git/GrudininYK/cs-lab02.git Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git push -u origin main Enumerating objects: 18, done. Counting objects: 100% (18/18), done. Delta compression using up to 12 threads Compressing objects: 100% (16/16), done. Writing objects: 100% (18/18), 2.33 KiB | 2.33 MiB/s, done. Total 18 (delta 2), reused 0 (delta 0), pack-reused 0 (from 0) remote: . Processing 1 references remote: Processed 1 references in total To http://uit.mpei.ru/git/GrudininYK/cs-lab02.git * [new branch] main -> main branch 'main' set up to track 'origin/main'. 31) Клонирование проекта для Боба: Egor@HOME-PC MINGW64 ~/Desktop/lab02/bob $ git clone http://uit.mpei.ru/git/GrudininYK/cs-lab02.git project Cloning into 'cs-lab02'... 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. Egor@HOME-PC MINGW64 ~/Desktop/lab02/bob $ cd project 32) Настройка Боба Egor@HOME-PC MINGW64 ~/Desktop/lab02/bob/project (main) $ git config user.name 'Bob (GrudininYK)' Egor@HOME-PC MINGW64 ~/Desktop/lab02/bob/project (main) $ git config user.email 'GrudininYK@mpei.ru' 33) Коммит печати произведения у Боба Egor@HOME-PC MINGW64 ~/Desktop/lab02/bob/project (main) $ git commit -a -m 'code: печать произведения' [main 7f8276f] code: печать произведения 1 file changed, 2 insertions(+), 1 deletion(-) Проверка коммитов от имени Боба Egor@HOME-PC MINGW64 ~/Desktop/lab02/bob/project (main) $ git log --stat commit 7f8276f5f62933fd561402da1c4ec79d3bf346e2 (HEAD -> main) Author: Bob (GrudininYK) Date: Sun Apr 14 21:44:36 2024 +0300 code: печать произведения main.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 34) Отправка коммита на сервер; Совместная работа над проектом без конфликтов правок. Egor@HOME-PC MINGW64 ~/Desktop/lab02/bob/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 12 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 416 bytes | 416.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/GrudininYK/cs-lab02.git 9dee190..7f8276f main -> main 35) Загрузка изменений на Алисе Egor@HOME-PC 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), 396 bytes | 79.00 KiB/s, done. From http://uit.mpei.ru/git/GrudininYK/cs-lab02 9dee190..7f8276f main -> origin/main 36) Просмотр истории всех веток у Алисы: ветка main отстает на один коммит от ветки origin/main Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --oneline --decorate --all --graph * 7f8276f (origin/main) code: печать произведения * 9dee190 (HEAD -> main) git: игнорирование файлов * 031f2d1 code: добавлен вывод разности * cc8bef5 добавлен вывод суммы * eb54a99 code: добавлен ввод чисел * 3596418 build: добавлен файл проекта * e2b8df6 code: заготовка программы 37) Продвижение ветки main к скачанной версии Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git pull --ff-only Updating 9dee190..7f8276f Fast-forward main.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 38) На машине Алисы: печать деления и его коммит Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -a -m 'code: печать деления' [main 086dc85] code: печать деления 1 file changed, 2 insertions(+), 1 deletion(-) 38) Отправка коммита на сервер от Алисы Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 12 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 410 bytes | 410.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/GrudininYK/cs-lab02.git 7f8276f..086dc85 main -> main 39)Загрузка изменений и продвижение Боба до скачанной версии: Egor@HOME-PC 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), 390 bytes | 97.00 KiB/s, done. From http://uit.mpei.ru/git/GrudininYK/cs-lab02 7f8276f..086dc85 main -> origin/main Updating 7f8276f..086dc85 Fast-forward main.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 40) Вывод максимума Алисой, его коммит и загрузка на сервер Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -a -m 'code: вывод максимального числа' [main f1f52c2] code: вывод максимального числа 1 file changed, 6 insertions(+) Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 12 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 457 bytes | 457.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/GrudininYK/cs-lab02.git 086dc85..f1f52c2 main -> main 41) Вывод минимума Бобом, его коммит и неудачная попытка загрузки на сервер: Egor@HOME-PC MINGW64 ~/Desktop/lab02/bob/project (main) $ git commit -a -m 'code: вывод минимального числа' [main ec0eaf5] code: вывод минимального числа 1 file changed, 6 insertions(+) Egor@HOME-PC MINGW64 ~/Desktop/lab02/bob/project (main) $ git push To http://uit.mpei.ru/git/GrudininYK/cs-lab02.git ! [rejected] main -> main (fetch first) error: failed to push some refs to 'http://uit.mpei.ru/git/GrudininYK/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. Egor@HOME-PC 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), 437 bytes | 109.00 KiB/s, done. From http://uit.mpei.ru/git/GrudininYK/cs-lab02 086dc85..f1f52c2 main -> origin/main Auto-merging main.cpp CONFLICT (content): Merge conflict in main.cpp Automatic merge failed; fix conflicts and then commit the result. Egor@HOME-PC MINGW64 ~/Desktop/lab02/bob/project (main|MERGING) $ git log --oneline --decorate --all --graph * ec0eaf5 (HEAD -> main) code: вывод минимального числа | * f1f52c2 (origin/main, origin/HEAD) code: вывод максимального числа |/ * 086dc85 code: печать деления * 7f8276f code: печать произведения * 9dee190 git: игнорирование файлов * 031f2d1 code: добавлен вывод разности * cc8bef5 добавлен вывод суммы * eb54a99 code: добавлен ввод чисел * 3596418 build: добавлен файл проекта * e2b8df6 code: заготовка программы 42. Перемещение коммита Боба поверх коммита Алисы завершилось ошибкой: Egor@HOME-PC 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 ec0eaf5... 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 ec0eaf5... code: вывод минимального числа 43. После исправления кода Боба: Professional@User-PC MINGW64 ~/Desktop/lab002/bob/project (main|REBASE 1/1) $ git add main.cpp Professional@User-PC MINGW64 ~/Desktop/lab002/bob/project (main|REBASE 1/1) $ git rebase --continue Successfully rebased and updated refs/heads/main. 44. Загрузка данных на сервер Бобом: Egor@HOME-PC MINGW64 ~/Desktop/lab02/bob/project (main) $ git push Enumerating objects: 8, done. Counting objects: 100% (8/8), done. Delta compression using up to 12 threads Compressing objects: 100% (6/6), done. Writing objects: 100% (6/6), 892 bytes | 892.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/GrudininYK/cs-lab02.git f1f52c2..f630659 main -> main 45. Изменение типа данных переменных у Алисы в отдельной ветке double: Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git branch double Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git checkout double Switched to branch 'double' Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (double) $ git commit -a -m 'code: изменение типа данных' [double e302202] code: изменение типа данных 1 file changed, 1 insertion(+), 1 deletion(-) 46. Переход в ветку main и слияние double в main: Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (double) $ git checkout main Switched to branch 'main' Your branch is up to date with 'origin/main'. 47.Результат слияния Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git pull remote: Enumerating objects: 8, done. remote: Counting objects: 100% (8/8), done. remote: Compressing objects: 100% (6/6), done. remote: Total 6 (delta 2), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (6/6), 872 bytes | 145.00 KiB/s, done. From http://uit.mpei.ru/git/GrudininYK/cs-lab02 f1f52c2..f630659 main -> origin/main Updating f1f52c2..f630659 Fast-forward main.cpp | 5 +++++ 1 file changed, 5 insertions(+) Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --oneline --decorate --all --graph * e302202 (double) code: изменение типа данных | * f630659 (HEAD -> main, origin/main) code: вывод максимума и минимума | * 9e8dcad code: вывод минимального числа |/ * f1f52c2 code: вывод максимального числа * 086dc85 code: печать деления * 7f8276f code: печать произведения * 9dee190 git: игнорирование файлов * 031f2d1 code: добавлен вывод разности * cc8bef5 добавлен вывод суммы * eb54a99 code: добавлен ввод чисел * 3596418 build: добавлен файл проекта * e2b8df6 code: заготовка программы Egor@HOME-PC 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(-) 48. Занос изменений на сервер Egor@HOME-PC MINGW64 ~/Desktop/lab02/alice/project (main) $ git push Enumerating objects: 13, done. Counting objects: 100% (13/13), done. Delta compression using up to 12 threads Compressing objects: 100% (9/9), done. Writing objects: 100% (9/9), 1.12 KiB | 1.12 MiB/s, done. Total 9 (delta 3), 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/GrudininYK/cs-lab02.git 8ef91d1..bad887f main -> main