Отчет по лабораторной работе №2 «Система контроля версий Gits Выполнила: Зеленкина К. М. Группа: А-03-23 Проверил: Примечание: работа выполнялась на Windows. 1. Создала на рабочем столе каталог lab02 и запустила в нем Git Bash, приглашение: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02 $ 2. Посмотреть файлы в рабочем каталоге можно командой "ls"---пусто: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02 $ ls Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02 $ 3. Создала каталоги Алисы и Боба, создала каталог "project", изучил команду "cd" в процессе: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02 $ mkdir alice Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02 $ mkdir bob Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02 $ cd alice Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice $ mkdir project Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice $ cd project Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project $ cd .. Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice $ cd project 4. Инициализировал репозитарий: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project $ git init Initialized empty Git repository in C:/Users/Катя Зеленкина/Desktop/lab02/alice/project/.git/ 5. Настроила репозитарий Алисы, чтобы коммиты были от ее имени: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (master) $ git config user.name 'Alice (ZelenkinaKM)' Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (master) $ git config user.email 'ZelenkinaKM@mpei.ru' 6. Посмотрела состояние рабочей копии: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (master) $ git status On branch master - нахожусь на ветке "master" No commits yet - ещё не созданы коммиты Untracked files: -файлы под гитом не отслеживаются (use "git add ..." to include in what will be committed) main.cpp project.cbp nothing added to commit but untracked files present (use "git add" to track) - пока ничего не добавлено в коммит 7. Занесла файл main.cpp под Git: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (master) $ git add main.cpp 8. Ещё раз посмотрела состояние рабочей копии: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (master) $ git status On branch master - нахожусь на ветке "master" No commits yet - пока нет коммитов Changes to be committed: -изменения, которые необходимо внести (use "git rm --cached ..." to unstage) new file: main.cpp - новый файл будет занесен под Git Untracked files: (use "git add ..." to include in what will be committed) project.cbp 9. Создание первого коммита: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (master) $ git commit -m 'code: заготовка программы' [master (root-commit) 36d3e61] code: заготовка программы 1 file changed, 9 insertions(+) create mode 100644 main.cppgit 10. Переименование ветки на "main" Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (master) $ git branch -m main Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ 11. Занесла файл project.cbp под Git и сделала коммит с ним: Катя Зеленкина@DESKTOP-97EM5NH 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 Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -m 'build: добавлен файл проекта' [main ad2c3c1] build: добавлен файл проекта 1 file changed, 40 insertions(+) create mode 100644 project.cbp 12. Проверка состояния рабочей копии: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git status On branch main - нахожусь на ветке "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 - изменение с "new file" на "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") 13. Создание коммитов с изменениями разными способами. Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git add main.cpp Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -m 'code: вывод суммы' [main 89776db] code: вывод суммы 1 file changed, 3 insertions(+), 1 deletion(-) Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git add main.cpp Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -m 'code: вывод разности' [main 3f7c27c] code: вывод разности 1 file changed, 1 insertion(+) 14. Игнорирование bin, obj, project.layout: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git status On branch main Untracked files: (use "git add ..." to include in what will be committed) .gitignore project.depend nothing added to commit but untracked files present (use "git add" to track) 15. Создание коммита с .gitignore, тема-git: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -a -m 'git: игнорирование каталогов' warning: in the working copy of 'project.cbp', LF will be replaced by CRLF the next time Git touches it [main cd5bd55] git: игнорирование каталогов 1 file changed, 1 insertion(+) 16. Команда "git log --stat": Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --stat commit cd5bd55cfd2f883fe461bc333f2d9a817f4bc616 (HEAD -> main) Author: Alice (ZelenkinaKM) Date: Wed Mar 27 14:13:12 2024 +0300 git: игнорирование каталогов //занесение бинарных файлов в Git project.cbp | 1 + 1 file changed, 1 insertion(+) commit 3f7c27ca31c69ef7559c56cefbd0bb90eb8c3134 Author: Alice (ZelenkinaKM) Date: Wed Mar 27 14:00:14 2024 +0300 code: вывод разности main.cpp | 1 + 1 file changed, 1 insertion(+) commit 89776dbe41838ee4422fb25c5b49e45123f74e33 Author: Alice (ZelenkinaKM) Date: Wed Mar 27 13:58:40 2024 +0300 code: вывод суммы main.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) commit ad2c3c13439e866fde8a03fad67f0653c4ff7c59 Author: Alice (ZelenkinaKM) Date: Wed Mar 27 13:52:54 2024 +0300 build: добавлен файл проекта project.cbp | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) commit 36d3e61eb044a1903948b33434848ecdc00fbba6 Author: Alice (ZelenkinaKM) Date: Wed Mar 27 13:50:29 2024 +0300 code: заготовка программы main.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) 17. Команда "git log --oneline --decorate": Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --oneline --decorate cd5bd55 (HEAD -> main) git: игнорирование каталогов 3f7c27c code: вывод разности 89776db code: вывод суммы ad2c3c1 build: добавлен файл проекта 36d3e61 code: заготовка программы 18. Команда "git log --oneline --decorate --all --graph": Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --oneline --decorate --all --graph * cd5bd55 (HEAD -> main) git: игнорирование каталогов * 3f7c27c code: вывод разности * 89776db code: вывод суммы * ad2c3c1 build: добавлен файл проекта * 36d3e61 code: заготовка программы 19. Коммиты по теме "build": Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --grep "build:" commit ad2c3c13439e866fde8a03fad67f0653c4ff7c59 Author: Alice (ZelenkinaKM) Date: Wed Mar 27 13:52:54 2024 +0300 build: добавлен файл проекта 20. Коммиты, затрагивающие project.cbp: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git log -- project.cbp commit cd5bd55cfd2f883fe461bc333f2d9a817f4bc616 (HEAD -> main) Author: Alice (ZelenkinaKM) Date: Wed Mar 27 14:13:12 2024 +0300 git: игнорирование каталогов commit ad2c3c13439e866fde8a03fad67f0653c4ff7c59 Author: Alice (ZelenkinaKM) Date: Wed Mar 27 13:52:54 2024 +0300 build: добавлен файл проекта 21. Просмотр предпоследнего коммита тремя способами: 1 способ: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git show HEAD commit cd5bd55cfd2f883fe461bc333f2d9a817f4bc616 (HEAD -> main) Author: Alice (ZelenkinaKM) Date: Wed Mar 27 14:13:12 2024 +0300 git: игнорирование каталогов diff --git a/project.cbp b/project.cbp index 99bb702..34f06bc 100644 --- a/project.cbp +++ b/project.cbp @@ -32,6 +32,7 @@ + 2 способ: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git show HEAD~1 commit 3f7c27ca31c69ef7559c56cefbd0bb90eb8c3134 Author: Alice (ZelenkinaKM) Date: Wed Mar 27 14:00:14 2024 +0300 code: вывод разности diff --git a/main.cpp b/main.cpp index 03b22ce..5a29d68 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'<< "A - B = " << a - b << '\n'; return 0; } 3 способ: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git show 3f7c27ca31c69ef7559c56cefbd0bb90eb8c3134 commit 3f7c27ca31c69ef7559c56cefbd0bb90eb8c3134 Author: Alice (ZelenkinaKM) Date: Wed Mar 27 14:00:14 2024 +0300 code: вывод разности diff --git a/main.cpp b/main.cpp index 03b22ce..5a29d68 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'<< "A - B = " << a - b << '\n'; return 0; } 22. Просмотр изменений: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git diff diff --git a/main.cpp b/main.cpp index 5a29d68..231d327 100644 --- a/main.cpp +++ b/main.cpp @@ -7,6 +7,6 @@ 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 << "A + B = " << a + b << '\n'<< "A - B = " << a - b << '\n'<<"A * B = " << a * b <<'\n'; //Добавлен вывод произведения return 0; } 23. Просмотрите изменения между самым первым коммитом и коммитом, добавляющим вывод разности: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --oneline --decorate cd5bd55 (HEAD -> main) git: игнорирование каталогов 3f7c27c code: вывод разности 89776db code: вывод суммы ad2c3c1 build: добавлен файл проекта 36d3e61 code: заготовка программы Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git diff 36d3e61 3f7c27c diff --git a/main.cpp b/main.cpp index b4392ec..5a29d68 100644 --- a/main.cpp +++ b/main.cpp @@ -4,6 +4,9 @@ using namespace std; int main() { - cout << "Hello world!" << endl; + cout << "Enter A and B: "; + int a, b; + cin >> a >> b; + cout << "A + B = " << a + b << '\n'<< "A - B = " << a - b << '\n'; return 0; } 24. Коммит вывода произведения: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -a -m 'code: вывод произведения' [main cd02993] code: вывод произведения 1 file changed, 1 insertion(+), 1 deletion(-) 25. Откат изменений: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git reset --hard HEAD~1 HEAD is now at cd5bd55 git: игнорирование каталогов Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git checkout HEAD -- main.cpp 25.Обмен кодом через удаленное хранилище: 1) Создание пары ключей: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ 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\232\320\260\321\202\321\217 \320\227\320\265\320\273\320\265\320\275\320\272\320\270\320\275\320\260/.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:gfcTcXiXSPVr0uKAnLopaG0m6RFGWohSBmms6qQZSYM Катя Зеленкина@DESKTOP-97EM5NH The key's randomart image is: +--[ED25519 256]--+ |ooo .ooo.. | |o=. . .oo o. | |*. o . o .. . .| |Eo+ ..oo. . .| |oo.o S+o. o + | |+.. . . .o + | |+o .+ . . | |o. =.= o | | o.+ .o | +----[SHA256]-----+ 2) Запуск агента Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ eval $(ssh-agent -s) Agent pid 2569 3) Загрузка ключа Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ ssh-add Enter passphrase for /c/Users/Катя Зеленкина/.ssh/id_ed25519: Identity added: /c/Users/Катя Зеленкина/.ssh/id_ed25519 (Катя Зеленкина@DESKTOP-97EM5NH) 4) Отображение ключа Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ cat ~/.ssh/id_ed25519.pub ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGvaiMwURYMii9KHsWkcIwUB5NhORTP+3H3GDUkvlu/S Катя Зеленкина@DESKTOP-97EM5NH 27. Отправка проекта на сервер: 1) Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git remote add origin git@uit.mpei.ru:ZelenkinaKM/cs-lab02.git Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git push -u origin main ssh: connect to host uit.mpei.ru port 22: Connection timed out fatal: Could not read from remote repository. - //SSH не работает Please make sure you have the correct access rights and the repository exists. Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git remote set-url origin http://uit.mpei.ru/git/ZelenkinaKM/cs-lab02 -// Смена протока SSH на HTTP Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git push -u origin main Enumerating objects: 15, done. Counting objects: 100% (15/15), done. Delta compression using up to 4 threads Compressing objects: 100% (14/14), done. Writing objects: 100% (15/15), 2.00 KiB | 513.00 KiB/s, done. Total 15 (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/ZelenkinaKM/cs-lab02 * [new branch] main -> main branch 'main' set up to track 'origin/main'. 28. Получение ссылки на проект: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git remote -v origin http://uit.mpei.ru/git/ZelenkinaKM/cs-lab02 (fetch) origin http://uit.mpei.ru/git/ZelenkinaKM/cs-lab02 (push) 28. Клонирование проекта для Боба: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob $ git clone http://uit.mpei.ru/git/ZelenkinaKM/cs-lab02 project Cloning into 'project'... remote: Enumerating objects: 15, done. remote: Counting objects: 100% (15/15), done. remote: Compressing objects: 100% (14/14), done. remote: Total 15 (delta 2), reused 0 (delta 0), pack-reused 0 Receiving objects: 100% (15/15), done. Resolving deltas: 100% (2/2), done. Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob $ cd project Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main) $ 29. Настройка Git для Боба: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main) $ git config user.name 'Bob (ZelenkinaKM)' Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main) $ git config user.email 'ZelenkinaKM@mpei.ru' 30. Коммит вывода произведения Боба: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main) $ git commit -a -m 'code: печать произведения чисел' [main a212e0e] code: печать произведения чисел 1 file changed, 1 insertion(+), 1 deletion(-) // Проверка коммитов Боба Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main) $ git log commit a212e0e31570ecc99c9f9a0383239fe84db08a38 (HEAD -> main) Author: Bob (ZelenkinaKM) Date: Wed Mar 27 15:02:34 2024 +0300 code: печать произведения чисел 31. Совместная работа над проектом без конфликтов правок: 1) Отправка коммита на сервер: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 4 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 396 bytes | 396.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/ZelenkinaKM/cs-lab02 cd5bd55..a212e0e main -> main 2)Загрузка изменений на Алисе Катя Зеленкина@DESKTOP-97EM5NH 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), 376 bytes | 34.00 KiB/s, done. From http://uit.mpei.ru/git/ZelenkinaKM/cs-lab02 cd5bd55..a212e0e main -> origin/main 3) Просмотр истории всех веток Алисы (Ветка main отстает на один коммит от ветки origin/main): Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --oneline --decorate --all --graph * a212e0e (origin/main) code: печать произведения чисел * cd5bd55 (HEAD -> main) git: игнорирование каталогов * 3f7c27c code: вывод разности * 89776db code: вывод суммы * ad2c3c1 build: добавлен файл проекта * 36d3e61 code: заготовка программы 4) Продвижение ветки main к скачанной версии: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git pull --ff-only Updating cd5bd55..a212e0e Fast-forward main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 5) Вывод деление и его коммит для Алисы: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -a -m 'code: вывод деления' [main 8d98a1d] code: вывод деления 1 file changed, 1 insertion(+), 1 deletion(-) 6) Отпрвка коммина на сервер от Алисы: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 4 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 389 bytes | 389.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/ZelenkinaKM/cs-lab02 a212e0e..8d98a1d main -> main 7) Загрузка изменений и продвижение Боба до скачанной версии: Катя Зеленкина@DESKTOP-97EM5NH 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), 369 bytes | 24.00 KiB/s, done. From http://uit.mpei.ru/git/ZelenkinaKM/cs-lab02 a212e0e..8d98a1d main -> origin/main Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main) $ git log --oneline --decorate --all --graph * 8d98a1d (origin/main, origin/HEAD) code: вывод деления * a212e0e (HEAD -> main) code: печать произведения чисел * cd5bd55 git: игнорирование каталогов * 3f7c27c code: вывод разности * 89776db code: вывод суммы * ad2c3c1 build: добавлен файл проекта * 36d3e61 code: заготовка программы Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main) $ git pull --ff-only Updating a212e0e..8d98a1d Fast-forward main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 32. Максимум Алиса и минимум Боб: 1) Вывод максимума Алисой, создание его коммита и загрузка на сервер: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git commit -a -m 'code: вывод максимума' [main a5d6385] code: вывод максимума 1 file changed, 10 insertions(+) Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git push Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 4 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 559 bytes | 559.00 KiB/s, done. Total 3 (delta 0), 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/ZelenkinaKM/cs-lab02 8d98a1d..a5d6385 main -> main 2) Вывод минимума Боба, создание его коммита и загрузка на сервер: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main) $ git commit -a -m 'code: вывод минимума' [main d0ec079] code: вывод минимума 1 file changed, 11 insertions(+), 1 deletion(-) Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main) $ git push To http://uit.mpei.ru/git/ZelenkinaKM/cs-lab02 ! [rejected] main -> main (fetch first) error: failed to push some refs to 'http://uit.mpei.ru/git/ZelenkinaKM/cs-lab02' 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. Катя Зеленкина@DESKTOP-97EM5NH 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 0), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (3/3), 539 bytes | 44.00 KiB/s, done. From http://uit.mpei.ru/git/ZelenkinaKM/cs-lab02 8d98a1d..a5d6385 main -> origin/main Auto-merging main.cpp CONFLICT (content): Merge conflict in main.cpp Automatic merge failed; fix conflicts and then commit the result. Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main|MERGING) $ git log --all commit d0ec079f7b15a1f8bf76351521b2a0560a14e8fb (HEAD -> main) Author: Bob (ZelenkinaKM) Date: Wed Mar 27 16:17:47 2024 +0300 code: вывод минимума commit a5d63856f8fcc49310e9b32561c468321ea3621f (origin/main, origin/HEAD) Author: Alice (ZelenkinaKM) Date: Wed Mar 27 16:15:55 2024 +0300 code: вывод максимума commit 8d98a1df1c977a32482527cd698dae3793712f3c Author: Alice (ZelenkinaKM) Date: Wed Mar 27 15:11:49 2024 +0300 code: вывод деления commit a212e0e31570ecc99c9f9a0383239fe84db08a38 Author: Bob (ZelenkinaKM) Date: Wed Mar 27 15:02:34 2024 +0300 code: печать произведения чисел commit cd5bd55cfd2f883fe461bc333f2d9a817f4bc616 Author: Alice (ZelenkinaKM) Date: Wed Mar 27 14:13:12 2024 +0300 git: игнорирование каталогов commit 3f7c27ca31c69ef7559c56cefbd0bb90eb8c3134 Author: Alice (ZelenkinaKM) Date: Wed Mar 27 14:00:14 2024 +0300 code: вывод разности commit 89776dbe41838ee4422fb25c5b49e45123f74e33 Author: Alice (ZelenkinaKM) Date: Wed Mar 27 13:58:40 2024 +0300 code: вывод суммы commit ad2c3c13439e866fde8a03fad67f0653c4ff7c59 Author: Alice (ZelenkinaKM) Date: Wed Mar 27 13:52:54 2024 +0300 build: добавлен файл проекта commit 36d3e61eb044a1903948b33434848ecdc00fbba6 Author: Alice (ZelenkinaKM) Date: Wed Mar 27 13:50:29 2024 +0300 code: заготовка программы 33. Перемещение коммита Боба поверх коммита Алисы: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main|MERGING) $ git rebase origin/main main.cpp: needs merge error: cannot rebase: You have unstaged changes. error: additionally, your index contains uncommitted changes. error: Please commit or stash them. 1)Cтатус: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main|MERGING) $ git status On branch main Your branch and 'origin/main' have diverged, and have 1 and 1 different commits each, respectively. (use "git pull" if you want to integrate the remote branch with yours) You have unmerged paths. (fix conflicts and run "git commit") (use "git merge --abort" to abort the merge) Unmerged paths: (use "git add ..." to mark resolution) both modified: main.cpp Untracked files: (use "git add ..." to include in what will be committed) bin/ obj/ project.depend project.layout no changes added to commit (use "git add" and/or "git commit -a") 2) После правок кода Боба: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main|MERGING) $ git commit -a -m 'code: вывод максимума и минимума' [main aab16ca] code: вывод максимума и минимума Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main) $ git rebase --continue fatal: No rebase in progress? История хранилища: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main) $ git log --oneline --decorate --all --graph * aab16ca (HEAD -> main) code: вывод максимума и минимума |\ | * a5d6385 (origin/main, origin/HEAD) code: вывод максимума * | d0ec079 code: вывод минимума |/ * 8d98a1d code: вывод деления * a212e0e code: печать произведения чисел * cd5bd55 git: игнорирование каталогов * 3f7c27c code: вывод разности * 89776db code: вывод суммы * ad2c3c1 build: добавлен файл проекта * 36d3e61 code: заготовка программы 3)Отправка правок на сервер: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/bob/project (main) $ git push Enumerating objects: 10, done. Counting objects: 100% (10/10), done. Delta compression using up to 4 threads Compressing objects: 100% (6/6), done. Writing objects: 100% (6/6), 804 bytes | 804.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/ZelenkinaKM/cs-lab02 a5d6385..aab16ca main -> main 34. Изменение типа данных переменных у Алисы в отдельной ветке double: 1) Создание ветки: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git branch double 2) Переход на ветку double: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git checkout double Switched to branch 'double' M main.cpp 3) Создание коммита изменения типа данных: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (double) $ git commit -a -m 'code: замена типа данных на double' [double fff114d] code: замена типа данных на double 1 file changed, 12 insertions(+), 1 deletion(-) 4) Переход на ветку main: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (double) $ git checkout main Switched to branch 'main' Your branch is up to date with 'origin/main'. Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ 5) Синхронизация ветки main: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git fetch remote: Enumerating objects: 10, done. remote: Counting objects: 100% (10/10), 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), 784 bytes | 32.00 KiB/s, done. From http://uit.mpei.ru/git/ZelenkinaKM/cs-lab02 a5d6385..aab16ca main -> origin/main 6) Просмотр истории веток: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git log --oneline --decorate --all --graph * fff114d (double) code: замена типа данных на double | * aab16ca (origin/main) code: вывод максимума и минимума | |\ | |/ |/| * | a5d6385 (HEAD -> main) code: вывод максимума | * d0ec079 code: вывод минимума |/ * 8d98a1d code: вывод деления * a212e0e code: печать произведения чисел * cd5bd55 git: игнорирование каталогов * 3f7c27c code: вывод разности * 89776db code: вывод суммы * ad2c3c1 build: добавлен файл проекта * 36d3e61 code: заготовка программы 7)Слияние ветки double в main: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git merge double Updating a5d6385..fff114d Fast-forward main.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) 35. Отправка на сервер: Катя Зеленкина@DESKTOP-97EM5NH MINGW64 ~/Desktop/lab02/alice/project (main) $ git push Enumerating objects: 10, done. Counting objects: 100% (10/10), done. Delta compression using up to 4 threads Compressing objects: 100% (6/6), done. Writing objects: 100% (6/6), 762 bytes | 762.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/ZelenkinaKM/cs-lab02 18086a7..8fe85a4 main -> main