Отчет по лабораторной работе № 2 "Система контроля версий Git" Выполнила: Зеленкина Кс. М. Группа: А-03-23 Проверил: Примечание: работа выполнялась на Windows. 1. Создала на рабочем столе каталог lab02 и запустила в нем Git Bash, приглашение: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02 $ 2. Просмотрела файлы в рабочем каталоге командой "ls": kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02 $ ls kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02 $ 3. Создание каталога Алисы и Боба, "project", команда "cd" в процессе: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02 $ mkdir alice kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02 $ mkdir bob kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02 $ cd alice kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice $ mkdir project kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice $ cd project kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project $ cd .. kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice $ cd project 4. Инициализация репозитария в project: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project $ git init Initialized empty Git repository in C:/Users/kseni/OneDrive/Рабочий стол/lab02/alice/project/.git/ 5. Смена назания ветки master на main: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git branch -m main kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ 6. Настройка репозитария Алисы, чтобы коммиты были от ее имени: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git config user.name 'Alice (Ksenia)' kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git config user.email 'ksenia@cat.ru' 7. Состояние рабочей копии после создания проекта в репозитарии Алисы: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git status On branch main - находимся на ветке main No commits yet - коммитов пока нет Untracked files: - файлы, которые ещё не добавлены в git (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) 9. Добавление файла main.cpp и проверка состояния kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git add main.cpp kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git status On branch main - находимся на ветке main No commits yet - коммитов пока нет Changes to be committed: (use "git rm --cached ..." to unstage) new file: main.cpp Untracked files: - файлы, которые ещё не добавлены в git (use "git add ..." to include in what will be committed) project.cbp 10. Коммит с файлом main.cpp: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git commit -m 'code: заготовка программы' [main (root-commit) 7bc776b] code: заготовка программы 1 file changed, 9 insertions(+) create mode 100644 main.cpp 11. Добавление project.cbp и коммит build: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/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 kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git commit -m 'build: добавлен файл' [main d3869f4] build: добавлен файл 1 file changed, 38 insertions(+) create mode 100644 project.cbp 12. Замена тела функции main() и проверка состояния: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git status On branch main Changes not staged for commit: (use "git add ..." to update what will be committed) (use "git restore ..." to discard changes in working directory) modified: main.cpp Untracked files: (use "git add ..." to include in what will be committed) bin/ obj/ no changes added to commit (use "git add" and/or "git commit -a") 12.1) Различия между случаем, когда добавлялся новый файл, и когда изменился существующий. До: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git status On branch main - находимся на ветке main No commits yet - коммитов пока нет Changes to be committed: (use "git rm --cached ..." to unstage) new file: main.cpp Untracked files: - файлы, которые ещё не добавлены в git (use "git add ..." to include in what will be committed) project.cbp После: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git status On branch main Changes not staged for commit: (use "git add ..." to update what will be committed) (use "git restore ..." to discard changes in working directory) modified: main.cpp Untracked files: (use "git add ..." to include in what will be committed) bin/ obj/ no changes added to commit (use "git add" and/or "git commit -a") 13.Создание коммитов с изменениями разными способами. kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git add main.cpp kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git commit -m 'code: ввод двух чисел' [main ad3d92e] code: ввод двух чисел 1 file changed, 3 insertions(+), 2 deletions(-) kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git add -u kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git commit -m 'code: вывод суммы' [main eaec63f] code: вывод суммы 1 file changed, 1 insertion(+) kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git commit -a -m 'code: вывод разности' [main accfe2a] code: вывод разности 1 file changed, 2 insertions(+), 1 deletion(-) 14. Игнорирование bin, obj, project.layout: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git status On branch main Untracked files: (use "git add ..." to include in what will be committed) .gitignore bin/ obj/ project.depend nothing added to commit but untracked files present (use "git add" to track) kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/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 kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git add .gitignore kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git commit -m 'git: игнорирование бинарных файлов' [main 84da74f] git: игнорирование бинарных файлов 1 file changed, 2 insertions(+) create mode 100644 .gitignore 16. Команда git log –stat kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log --stat commit 84da74f13f1b5a6620eeebf6620aef8acb39286f (HEAD -> main) Author: Alice (Ksenia) Date: Thu Mar 28 19:10:22 2024 +0300 git: игнорирование бинарных файлов .gitignore | 2 ++ 1 file changed, 2 insertions(+) commit accfe2aaf535cb55d465467418c42b193d5679a9 Author: Alice (Ksenia) Date: Thu Mar 28 18:49:30 2024 +0300 code: вывод разности main.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) commit eaec63ffa5ffcd5017b75bd365ba19f68368c03c Author: Alice (Ksenia) Date: Thu Mar 28 18:47:56 2024 +0300 code: вывод суммы main.cpp | 1 + 17. Команда git log --oneline —decorate kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log --oneline --decorate 84da74f (HEAD -> main) git: игнорирование бинарных файлов accfe2a code: вывод разности eaec63f code: вывод суммы ad3d92e code: ввод двух чисел d3869f4 build: добавлен файл 7bc776b code: заготовка программы 18. Команда git log --oneline --decorate --all --graph kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log --oneline --decorate --all --graph * 84da74f (HEAD -> main) git: игнорирование бинарных файлов * accfe2a code: вывод разности * eaec63f code: вывод суммы * ad3d92e code: ввод двух чисел * d3869f4 build: добавлен файл * 7bc776b code: заготовка программы 19. Просмотр коммитов по теме 'build' kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log --grep 'build:' commit d3869f4cfe9813ac6bb7c3c23ab5eac2777f0292 Author: Alice (Ksenia) Date: Wed Mar 27 17:07:24 2024 +0300 build: добавлен файл 20. Просмотр коммитов, затрагивающие 'project.cbp' kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log -- project.cbp commit d3869f4cfe9813ac6bb7c3c23ab5eac2777f0292 Author: Alice (Ksenia) Date: Wed Mar 27 17:07:24 2024 +0300 build: добавлен файл 21. Просмотр предпоследний коммит: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git show HEAD~1 commit accfe2aaf535cb55d465467418c42b193d5679a9 Author: Alice (Ksenia) Date: Thu Mar 28 18:49:30 2024 +0300 code: вывод разности diff --git a/main.cpp b/main.cpp index b2f34ce..c3d4222 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'; } 22. Команда git diff kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git diff diff --git a/main.cpp b/main.cpp index c3d4222..110af4d 100644 --- a/main.cpp +++ b/main.cpp @@ -8,5 +8,6 @@ cout << "Enter A and B: "; 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'; } 23. Просмотр изменений между самым первым коммитом и коммитом, добавляющим вывод разности. kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log --oneline --decorate 84da74f (HEAD -> main) git: игнорирование бинарных файлов accfe2a code: вывод разности eaec63f code: вывод суммы ad3d92e code: ввод двух чисел d3869f4 build: добавлен файл 7bc776b code: заготовка программы kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git diff 7bc776b 84da74f diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f346b09 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/bin +obj/ diff --git a/main.cpp b/main.cpp index b4392ec..c3d4222 100644 --- a/main.cpp +++ b/main.cpp @@ -4,6 +4,9 @@ using namespace std; int main() { - cout << "Hello world!" << endl; - return 0; +cout << "Enter A and B: "; +int a, b; +cin >> a >> b; +cout << "A + B = " << a + b << '\n' + << "A - B = " << a - b << '\n'; } diff --git a/project.cbp b/project.cbp 24. Коммит вывода произведения. kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git add main.cpp kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git commit -m 'code: вывод произведения' [main 5c19921] code: вывод произведения 1 file changed, 2 insertions(+), 1 deletion(-) 25. Откат коммита к предыдущему kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git reset --hard HEAD~1 HEAD is now at 84da74f git: игнорирование бинарных файлов kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git checkout HEAD — main.cpp 26. Обмен кодом через удаленное хранилище 26.1) Пара ключей: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ ssh-keygen Generating public/private ed25519 key pair. Enter file in which to save the key (/c/Users/kseni/.ssh/id_ed25519): /c/Users/kseni/.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/kseni/.ssh/id_ed25519 Your public key has been saved in /c/Users/kseni/.ssh/id_ed25519.pub The key fingerprint is: SHA256:YUxygNKQ6uKKC/4zAdbnAOivylQyIFlTjb/++Sn5GoU kseni@DESKTOP-9MLN83A The key's randomart image is: +--[ED25519 256]--+ |. +=.+o.o | |.+o.+ .= | |=.o. . + | |++ o ... o | |ooo.+ .E . | |..+o .. . | |+.. .. .. | |*o o . oo . | |B+..o .+=+ | +----[SHA256]-----+ kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ eval $(ssh-agent -s) Agent pid 2073 kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ ssh-add Enter passphrase for /c/Users/kseni/.ssh/id_ed25519: Identity added: /c/Users/kseni/.ssh/id_ed25519 (kseni@DESKTOP-9MLN83A) kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ cat ~/.ssh/id_ed25519.pub ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICGUrJkZkzKcJHoIw6nRftoV+tkizbRdo9xix6S6P0un kseni@DESKTOP-9MLN83A 26.2) Запуск агента kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ eval $(ssh-agent -s) Agent pid 2013 kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ ssh-add Enter passphrase for /c/Users/kseni/.ssh/id_ed25519: Identity added: /c/Users/kseni/.ssh/id_ed25519 (kseni@DESKTOP-9MLN83A) 27. Отправка проекта на сервер 27.1) SSH kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git remote add origin git@uit.mpei.ru:ZelenkinaXM/cs-lab02.git kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/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. Please make sure you have the correct access rights and the repository exists. 27.2) смена протокола с SSH на HTTP kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git remote set-url origin http://uit.mpei.ru/git/ZelenkinaXM/cs-lab02.git kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git push -u origin main Enumerating objects: 18, done. Counting objects: 100% (18/18), done. Delta compression using up to 4 threads Compressing objects: 100% (16/16), done. Writing objects: 100% (18/18), 2.26 KiB | 288.00 KiB/s, done. Total 18 (delta 2), reused 0 (delta 0), pack-reused 0 (from 0) remote: . Processing 1 references remote: Processed 1 references in total To http://uit.mpei.ru/git/ZelenkinaXM/cs-lab02.git * [new branch] main -> main branch 'main' set up to track 'origin/main'. 28. Отобразил ссылку на проект: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git remote -v origin http://uit.mpei.ru/git/ZelenkinaXM/cs-lab002.git (fetch) origin http://uit.mpei.ru/git/ZelenkinaXM/cs-lab002.git (push) 29. Клонирование проекта для Боба: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob $ git clone http://uit.mpei.ru/git/ZelenkinaXM/cs-lab02.git project Cloning into 'project'... remote: Enumerating objects: 18, done. remote: Counting objects: 100% (18/18), done. remote: Compressing objects: 100% (16/16), done. remote: Total 18 (delta 2), reused 0 (delta 0), pack-reused 0 Receiving objects: 100% (18/18), done. Resolving deltas: 100% (2/2), done. kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob $ cd project 30) Настройка Боба kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git config user.name 'Bob (Ksenia)' kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git config user.email 'ksenia@cat.ru' 31) Коммит печати произведения у Боба kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git add main.cpp kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git commit -m 'code: печать произведения' [main e28ec35] code: печать произведения 1 file changed, 2 insertions(+), 1 deletion(-) 32) Проверка коммитов от имени Боба kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git log commit 4114eddf34e0872a80a84323ca66ea368f6687bf (HEAD -> main) Author: Bob (Ksenia) Date: Sun Mar 31 20:51:01 2024 +0300 code: печать произведения commit 26687982ea56dc228574330b709109d584c212e7 (origin/main, origin/HEAD) Author: Alice (Ksenia) Date: Sun Mar 31 20:37:41 2024 +0300 git: игнорирование бинарных файлов commit bb8bee8a0447d92a38f883628eb495e2d59d2118 Author: Alice (Ksenia) Date: Sun Mar 31 20:36:04 2024 +0300 code: вывод разности commit a9bd6efd242e969490469ec6f5b284050473be5e Author: Alice (Ksenia) Date: Sun Mar 31 20:35:31 2024 +0300 code: вывод суммы 33) Отправка коммита на сервер; Совместная работа над проектом без конфликтов правок. $ 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), 412 bytes | 206.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/ZelenkinaXM/cs-lab02.git 2668798..4114edd main -> main 33.1) Загрузка изменений на Алисе kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/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), 392 bytes | 30.00 KiB/s, done. From http://uit.mpei.ru/git/ZelenkinaXM/cs-lab02 2668798..4114edd main -> origin/main 33.2) Просмотр истории всех веток у Алисы: ветка main отстает на один коммит от ветки origin/main kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log --oneline --decorate --all --graph * 4114edd (origin/main) code: печать произведения * 2668798 (HEAD -> main) git: игнорирование бинарных файлов * bb8bee8 code: вывод разности * a9bd6ef code: вывод суммы * c44d348 code: ввод двух чисел * fada619 build: добавлен файл проекта * 65e3954 code: заготовка программы 33.3) Продвижение ветки main к скачанной версии kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git pull --ff-only Updating 2668798..4114edd Fast-forward main.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) 33.4) На машине Алисы: печать деления и его коммит: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git add main.cpp kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git commit -m 'code: печать деления' [main 7665082] code: печать деления 1 file changed, 1 insertion(+), 1 deletion(-) 33.5) Отправка коммита на сервер от Алисы: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/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), 396 bytes | 198.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/ZelenkinaXM/cs-lab02.git 4114edd..7665082 main -> main 33.6) Загрузка изменений и продвижение Боба до скачанной версии: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/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), 376 bytes | 17.00 KiB/s, done. From http://uit.mpei.ru/git/ZelenkinaXM/cs-lab02 4114edd..7665082 main -> origin/main kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git log --oneline --decorate --all --graph * 7665082 (origin/main, origin/HEAD) code: печать деления * 4114edd (HEAD -> main) code: печать произведения * 2668798 git: игнорирование бинарных файлов * bb8bee8 code: вывод разности * a9bd6ef code: вывод суммы * c44d348 code: ввод двух чисел * fada619 build: добавлен файл проекта * 65e3954 code: заготовка программы kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git pull --ff-only Updating 4114edd..7665082 Fast-forward main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 31.1) Вывод максимума Алисой, его коммит и загрузка на сервер kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git add main.cpp kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git commit -m 'code: вывод максимума' [main efa8720] code: вывод максимума 1 file changed, 10 insertions(+) kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/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), 581 bytes | 581.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/ZelenkinaXM/cs-lab02.git 7665082..efa8720 main -> main 31.2) Вывод минимума Бобом, его коммит и неудачная попытка загрузки на сервер: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git add main.cpp kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git commit -m 'code: вывод минимума' [main 40c93a8] code: вывод минимума 1 file changed, 10 insertions(+) kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git push To http://uit.mpei.ru/git/ZelenkinaXM/cs-lab02.git ! [rejected] main -> main (fetch first) error: failed to push some refs to 'http://uit.mpei.ru/git/ZelenkinaXM/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. kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/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), 561 bytes | 26.00 KiB/s, done. From http://uit.mpei.ru/git/ZelenkinaXM/cs-lab02 7665082..efa8720 main -> origin/main Auto-merging main.cpp CONFLICT (content): Merge conflict in main.cpp Automatic merge failed; fix conflicts and then commit the result. kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/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. kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main|MERGING) $ git log --all commit b3b9bec9eea4bbc5e01822ae6682c8afe43ffd3d (HEAD -> main) Author: Bob (Ksenia) Date: Sat Mar 31 21:35:57 2024 +0500 code: вывод минимума commit 0ded0aa18b285fc4732179dff5a03a77d5bd723b (origin/main, origin/HEAD) Author: Alice (Ksenia) Date: Sat Mar 31 20:56:52 2024 +0500 code: вывод максимума commit 62a1076cbaa5f5882cf62323d50fdbcf8155ca03 Author: Alice (Ksenia) Date: Sat Mar 31 20:24:53 2024 +0500 code: печать деления commit e6b8cfd712b68cab08de013778ee8704928a7b75 Author: Bob (Ksenia) Date: Sat Mar 31 20:03:32 2024 +0500 code: печать произведения commit ef0e563f3bba7bede193d908c455e5f36ce7feab Author: Alice (Ksenia) Date: Sat Mar 31 18:21:25 2024 +0500 git: игнорирование бинарных файлов commit a209f26f22fb94b9595c7db5ed9eed96608518e6 Author: Alice (Ksenia) Date: Sat Mar 31 17:46:48 2024 +0500 code: вывод разности commit 8bda21b43c623462ddf797e788fd2ea31d85a66e Author: Alice (Ksenia) Date: Sat Mar 31 17:45:11 2024 +0500 code: вывод суммы commit 44e806f7c0315d090923210664f88965f71820ba Author: Alice (Ksenia) Date: Sat Mar 31 17:41:47 2024 +0500 code: ввод двух чисел commit ecebc329f59855356b85e1f6b1600a03683ac867 Author: Alice (Ksenia) Date: Sat Mar 31 17:28:57 2024 +0500 build: добавлен файл проекта commit 749d3e0686f9169e9721d004d83e9d30d3992a5f Author: Alice (Ksenia) Date: Sat Mar 31 17:17:36 2024 +0500 code: заготовка программы 33. Перемещение коммита Боба поверх коммита Алисы завершилось ошибкой: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/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. 34.После исправления кода Боба: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main|REBASE 1/1) $ git rebase --continue main.cpp: needs merge You must edit all merge conflicts and then mark them as resolved using git add kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main|REBASE 1/1) $ git add main.cpp kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main|REBASE 1/1) $ git commit -m 'code: вывод максимума и минимума' [main e9719a2] code: вывод максимума и минимума 1 file changed, 2 insertions(+) kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main|REBASE 1/1) $ git rebase --continue Successfully rebased and updated refs/heads/main. kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/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), 388 bytes | 194.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/ZelenkinaXM/cs-lab02.git 7490b26..e9719a2 main -> main 35. Изменение типа данных переменных у Алисы в отдельной ветке double: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git branch double kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git checkout double Switched to branch 'double' kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (double) $ git add main.cpp kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (double) $ git commit -m 'code: замена типа данных на double' [double 6248d56] code: замена типа данных на double 1 file changed, 2 insertions(+), 2 deletions(-) 36) Переход в ветку main и сливание double в main: kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (double) $ git checkout main Switched to branch 'main' Your branch is up to date with 'origin/main'. kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git merge double Merge made by the 'ort' strategy. kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git pull Already up to date. kseni@DESKTOP-9MLN83A MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git push Enumerating objects: 9, done. Counting objects: 100% (9/9), done. Delta compression using up to 4 threads Compressing objects: 100% (5/5), done. Writing objects: 100% (5/5), 784 bytes | 392.00 KiB/s, done. Total 5 (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/ZelenkinaXM/cs-lab02.git e9719a2..b90a3a7 main -> main