diff --git a/README.md b/README.md index e69de29..b6e81b5 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,1291 @@ + +Отчет по лабораторной работе № 2 "Система контроля версий Git" + +Выполнил: Нефедов М.А. +Группа: А-01-24 +Проверил: Козлюк Д.А. + +Примечание: работа выполнялась на Windows. + +------------------------------------------------------------------------- +Вход в терминал и создание структуры каталогов +------------------------------------------------------------------------- + +1. Создал на рабочем столе каталог lab02 и запустил в нем Git Bash, приглашение: + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02 +$ + + +2. Просмотрел файлы в рабочем каталоге можно командой "ls" --- пусто: + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02 +$ ls + + +3. Создал каталоги Алисы и Боба, создал каталог "project", +изучил команду "cd" в процессе: + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02 +$ mkdir alice + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02 +$ mkdir bob + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02 +$ cd alice + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice +$ mkdir project + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice +$ cd project + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project +$ cd .. + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice +$ cd project + + +------------------------------------------------------------------------- +Инициализация репозитария и настройка Git +------------------------------------------------------------------------- + + +4. Инициализировал репозитарий и поменял имя ветки: + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project +$ git init +Initialized empty Git repository in C:/Users/I/Desktop/lab02/alice/project/.git/ + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice (master) +$ git branch -m main + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ ls -A +.git/ + + +5. Настроим репозитарий Алисы, чтобы коммиты были от ее имени: + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git config user.name 'Alice (NefedovMA)' + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git config user.email 'NefedovMikA@mpei.ru' + + +------------------------------------------------------------------------- +Занесение файлов под контроль версий +------------------------------------------------------------------------- + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git status +On branch master //Отображает статус ветки master + + +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) + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git add main.cpp + + +6. Еще раз посмотрел состояние рабочей копии + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git status +On branch master + + +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 + + +7. Сделал первый коммит + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git commit -m 'code: заготовка программы' +[master (root-commit) ea154c7] code: заготовка программы + 1 file changed, 9 insertions(+) + create mode 100644 main.cpp + + + +------------------------------------------------------------------------- +Составление сообщений к коммитам +------------------------------------------------------------------------- + + +9. Добавил файл project.cbp в индекс и сделал коммит с ним + + +I@DESKTOP-EKCEBSK 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 + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git commit -m 'build: add project file' +[main d864b88] build: add project file + 1 file changed, 40 insertions(+) + create mode 100644 project.cbp + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/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") + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git add main.cpp + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git commit -m 'code: add sum' +[main 46e6a8d] code: add sum + 1 file changed, 3 insertions(+), 2 deletions(-) + + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git add -u + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git commit -m 'code: add difference' +[main a9d8a17] code: add difference + 1 file changed, 2 insertions(+), 1 deletion(-) + + + +------------------------------------------------------------------------- +Игнорирование файлов +------------------------------------------------------------------------- + + +I@DESKTOP-EKCEBSK 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) + + +I@DESKTOP-EKCEBSK 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) + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git add .gitignore + + +10. Создал коммит с .gitignore, тема — git. + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git commit -m 'build: git' +[main f507a7a] build: git + 1 file changed, 2 insertions(+) + create mode 100644 .gitignore + + +------------------------------------------------------------------------- +Просмотр истории +------------------------------------------------------------------------- + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git log +commit f507a7a5366fb2e6468d92f4c0d285ef16f56b65 (HEAD -> main) +Author: Alice (NefedovMA) +Date: Sun Apr 6 22:04:34 2025 +0300 + + build: git + +commit a9d8a175ab1029906313bf0b820457c48593fc11 +Author: Alice (NefedovMA) +Date: Sun Apr 6 21:54:00 2025 +0300 + + code: add difference + +commit 46e6a8d52c5519fa3e9a7b1cdd1385714fea4a29 +Author: Alice (NefedovMA) +Date: Sun Apr 6 21:52:52 2025 +0300 + + code: add sum + +commit d864b88186eddd5715ba6a1c93462e209470419f +Author: Alice (NefedovMA) +Date: Sun Apr 6 21:44:57 2025 +0300 + + build: add project file + +commit bd3a459ab73df14b8fe86f27e091d1bda96c09fb +Author: Alice (NefedovMA) +Date: Sun Apr 6 21:43:20 2025 +0300 + + code: заготовка программы + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git log --stat +commit f507a7a5366fb2e6468d92f4c0d285ef16f56b65 (HEAD -> main) +Author: Alice (NefedovMA) +Date: Sun Apr 6 22:04:34 2025 +0300 + + build: git + + .gitignore | 2 ++ + 1 file changed, 2 insertions(+) + +commit a9d8a175ab1029906313bf0b820457c48593fc11 +Author: Alice (NefedovMA) +Date: Sun Apr 6 21:54:00 2025 +0300 + + code: add difference + + main.cpp | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +commit 46e6a8d52c5519fa3e9a7b1cdd1385714fea4a29 +Author: Alice (NefedovMA) +Date: Sun Apr 6 21:52:52 2025 +0300 + + code: add sum + + main.cpp | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +commit d864b88186eddd5715ba6a1c93462e209470419f +Author: Alice (NefedovMA) +Date: Sun Apr 6 21:44:57 2025 +0300 + + build: add project file + + project.cbp | 40 ++++++++++++++++++++++++++++++++++++++++ + 1 file changed, 40 insertions(+) + +commit bd3a459ab73df14b8fe86f27e091d1bda96c09fb +Author: Alice (NefedovMA) +Date: Sun Apr 6 21:43:20 2025 +0300 + + code: заготовка программы + + + + main.cpp | 9 +++++++++ + 1 file changed, 9 insertions(+) + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git log --oneline --decorate +edcde68 (HEAD -> main) build: git +b5a62d1 code: add difference +a475681 code: add sum +20710a4 build: add project file +ea154c7 code: заготовка программы + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) + git log --oneline --decorate +f507a7a (HEAD -> main) build: git +a9d8a17 code: add difference +46e6a8d code: add sum +d864b88 build: add project file +bd3a459 code: заготовка программы + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --oneline --decorate --all --graph +* f507a7a (HEAD -> main) build: git +* a9d8a17 code: add difference +* 46e6a8d code: add sum +* d864b88 build: add project file +* bd3a459 code: заготовка программы + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --grep "build:" +commit f507a7a5366fb2e6468d92f4c0d285ef16f56b65 (HEAD -> main) +Author: Alice (NefedovMA) +Date: Sun Apr 6 22:04:34 2025 +0300 + + build: git + +commit d864b88186eddd5715ba6a1c93462e209470419f +Author: Alice (NefedovMA) +Date: Sun Apr 6 21:44:57 2025 +0300 + + build: add project file + + + +12. Нашел коммиты, затрагивающие project.cbp: + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log -- project.cbp +commit d864b88186eddd5715ba6a1c93462e209470419f +Author: Alice (NefedovMA) +Date: Sun Apr 6 21:44:57 2025 +0300 + + build: add project file + + + +------------------------------------------------------------------------- +Просмотр коммитов +------------------------------------------------------------------------- + + +13. Просмотрел предпоследний коммит: + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git show HEAD~1 +commit a9d8a175ab1029906313bf0b820457c48593fc11 +Author: Alice (NefedovMA) +Date: Sun Apr 6 21:54:00 2025 +0300 + + code: add difference + +diff --git a/main.cpp b/main.cpp +index 3609423..5f14a52 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -5,6 +5,7 @@ using namespace std; + int main() + { + cout << "Enter A and B: "; +- nt a, b; ++ int a, b; + cin >> a >> b; ++ cout << "A + B = " << a + b ; + } + << "A - B = " << a - b << '\n'; + } + + +------------------------------------------------------------------------- +Просмотр изменений +------------------------------------------------------------------------- + + +14. Просмотрел изменения в рабочей копии: + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git diff +diff --git a/main.cpp b/main.cpp +index 5f14a52..f372c78 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -7,5 +7,7 @@ int main() + cout << "Enter A and B: "; + int a, b; + cin >> a >> b; +- cout << "A + B = " << a + b ; ++ cout << "A + B = " << a + b << '\n' ++ << "A - B = " << a - b << '\n' ++ << "A * B = " << a * b << '\n'; + } + + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git diff HEAD~2 +diff --git a/.gitignore b/.gitignore +new file mode 100644 +index 0000000..4c7473d +--- /dev/null ++++ b/.gitignore +@@ -0,0 +1,2 @@ ++/bin ++/obj +diff --git a/main.cpp b/main.cpp +index 3609423..f372c78 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -5,6 +5,9 @@ using namespace std; + int main() + { + cout << "Enter A and B: "; +- nt a, b; ++ int a, b; + cin >> a >> b; ++ cout << "A + B = " << a + b << '\n' ++ << "A - B = " << a - b << '\n' ++ << "A * B = " << a * b << '\n'; + } + + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git diff HEAD~2 HEAD +diff --git a/.gitignore b/.gitignore +new file mode 100644 +index 0000000..4c7473d +--- /dev/null ++++ b/.gitignore +@@ -0,0 +1,2 @@ ++/bin ++/obj +diff --git a/main.cpp b/main.cpp +index 3609423..5f14a52 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -5,6 +5,7 @@ using namespace std; + int main() + { + cout << "Enter A and B: "; +- nt a, b; ++ int a, b; + cin >> a >> b; ++ cout << "A + B = " << a + b ; + } + + + +15. Просмотрел изменения между самым первым коммитом и коммитом, добавляющим вывод разности: + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git diff bd3a459 a9d8a17 +diff --git a/main.cpp b/main.cpp +diff --git a/main.cpp b/main.cpp +index b4392ec..5f14a52 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -4,6 +4,8 @@ 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 ; + } +diff --git a/project.cbp b/project.cbp +new file mode 100644 +index 0000000..99bb702 +--- /dev/null ++++ b/project.cbp +@@ -0,0 +1,40 @@ ++ ++ ++ ++ ++ +/usr/bin/bash: -c: line 1: syntax error near unexpected token `(' +/usr/bin/bash: -c: line 1: `lessecho -p0x22 -d0x22 -e\\ -n0x3b -n0x20 -n0x2a -n0x3f -n0x9 -n0xa -n0x27 - +n0x22 -n0x28 -n0x29 -n0x3c -n0x3e -n0x5b -n0x5d -n0x7c -n0x26 -n0x5e -n0x60 -n0x23 -n0x5c -n0x24 -n0x25 +-n0x3d -n0x7e -n0x7b -n0x7d -n0x2c -- (main)' ++ ++ ++ ++ ++ ++ +bash: syntax error near unexpected token `newline' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ + +bash: syntax error near unexpected token `newline' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ + +bash: syntax error near unexpected token `newline' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ + +bash: syntax error near unexpected token `newline' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ + +bash: syntax error near unexpected token `newline' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ + +bash: syntax error near unexpected token `newline' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ + +bash: syntax error near unexpected token `newline' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ + +bash: syntax error near unexpected token `newline' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ + +bash: syntax error near unexpected token `newline' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ + +bash: syntax error near unexpected token `newline' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ + +bash: syntax error near unexpected token `newline' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ + +bash: syntax error near unexpected token `newline' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ + +bash: syntax error near unexpected token `newline' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ + +bash: syntax error near unexpected token `newline' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ (END) +bash: END: command not found + + + +------------------------------------------------------------------------- +Откат изменений +------------------------------------------------------------------------- + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add -u + + + +16. Закоммител изменения в рабочей копии (вывод произведения): + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m 'code: add product' +[main 3ce46ce] code: add product + 1 file changed, 4 insertions(+), 2 deletions(-) + + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git reset --hard HEAD~1 +HEAD is now at f507a7a build: git + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git checkout HEAD -- main.cpp + + + +------------------------------------------------------------------------- +Обмен кодом через удаленное хранилище +------------------------------------------------------------------------- + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ ssh-keygen +Generating public/private ed25519 key pair. +Enter file in which to save the key (/c/Users/I/.ssh/id_ed25519): +Created directory '/c/Users/I/.ssh'. +Enter passphrase for "/c/Users/I/.ssh/id_ed25519" (empty for no passphrase): +Enter same passphrase again: +Your identification has been saved in /c/Users/I/.ssh/id_ed25519 +Your public key has been saved in /c/Users/I/.ssh/id_ed25519.pub +The key fingerprint is: +SHA256:3IhDpTLF5vYqh/iNcKH2ac8tto/5IDRUPxP/qZey8U8 I@DESKTOP-EKCEBSK +The key's randomart image is: ++--[ED25519 256]--+ +| .o o | +| oo+ o | +| +oo + . | +| . +oo = . . | +| +.o.S . o | +| o o .. . . | +| +.o... + o E | +| ..++*== * . | +| o==B=+ . ... | ++----[SHA256]-----+ + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ eval $(ssh-agent -s) +Agent pid 2267 + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ ssh-add +Enter passphrase for /c/Users/I/.ssh/id_ed25519: +Bad passphrase, try again for /c/Users/I/.ssh/id_ed25519: +Bad passphrase, try again for /c/Users/I/.ssh/id_ed25519: +Identity added: /c/Users/I/.ssh/id_ed25519 (I@DESKTOP-EKCEBSK) + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ cat ~/.ssh/id_ed25519.pub +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKNWxzD9r+9NznDsXzzV2RjjWxwk3tk2EWX6XJTRYuIs I@DESKTOP-EKCEBSK + + +------------------------------------------------------------------------- +Отправка проекта на сервер +------------------------------------------------------------------------- + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ touch README.md + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git init +Reinitialized existing Git repository in C:/Users/I/Desktop/lab02/alice/project/.git/ + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git checkout -b main +fatal: a branch named 'main' already exists + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add README.md + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m +error: switch `m' requires a value + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m "first commit" +[main 2247569] first commit + 1 file changed, 0 insertions(+), 0 deletions(-) + create mode 100644 README.md + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git remote add origin git@uit.mpei.ru:NefedovMikA/cs-lab02.git + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git push -u origin main +The authenticity of host 'uit.mpei.ru (193.233.68.149)' can't be established. +ED25519 key fingerprint is SHA256:Q5w0UKEzQKA3J6NyMtjwCLvtAykoxdugIXjx6NwU4NA. +This key is not known by any other names. +Are you sure you want to continue connecting (yes/no/[fingerprint])? yes +Warning: Permanently added 'uit.mpei.ru' (ED25519) to the list of known hosts. +Enumerating objects: 18, done. +Counting objects: 100% (18/18), done. +Delta compression using up to 12 threads +Compressing objects: 100% (15/15), done. +Writing objects: 100% (18/18), 2.07 KiB | 708.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 uit.mpei.ru:NefedovMikA/cs-lab02.git + * [new branch] main -> main +branch 'main' set up to track 'origin/main'. + + +------------------------------------------------------------------------- +Получение проекта с сервера +------------------------------------------------------------------------- + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob +$ git clone git@uit.mpei.ru:NefedovMikA/cs-lab02.git project +Cloning into 'project'... +Enter passphrase for key '/c/Users/I/.ssh/id_ed25519': +remote: Enumerating objects: 18, done. +remote: Counting objects: 100% (18/18), done. +remote: Compressing objects: 100% (15/15), 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. + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob +$ cd project + + + +17. «На машине Боба» настроил Git (git config): + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob/project (main) +$ git config user.name 'Bob (NefedovMA)' + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob/project (main) +$ git config user.email 'NefedovMikA@mpei.ru' + + + +------------------------------------------------------------------------- +Совместная работа над проектом без конфликтов и правок +------------------------------------------------------------------------- + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob/project (main) +$ git add -u + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob/project (main) +$ git commit -m 'code: add product' +[main dbbf4bd] code: add product + 1 file changed, 3 insertions(+), 1 deletion(-) + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob/project (main) +$ git show HEAD +commit dbbf4bd2bd62c74a391676149f54488be6470274 (HEAD -> main) +Author: Bob (NefedovMA) +Date: Sun Apr 6 23:56:47 2025 +0300 + + code: add product + +diff --git a/main.cpp b/main.cpp +index 5f14a52..f372c78 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -7,5 +7,7 @@ int main() + cout << "Enter A and B: "; + int a, b; + cin >> a >> b; +- cout << "A + B = " << a + b ; ++ cout << "A + B = " << a + b << '\n' ++ << "A - B = " << a - b << '\n' ++ << "A * B = " << a * b << '\n'; + } + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob/project (main) +$ git push +Enter passphrase for key '/c/Users/I/.ssh/id_ed25519': +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), 332 bytes | 332.00 KiB/s, done. +Total 3 (delta 2), reused 0 (delta 0), pack-reused 0 (from 0) +remote: . Processing 1 references +remote: Processed 1 references in total +To uit.mpei.ru:NefedovMikA/cs-lab02.git + 2247569..dbbf4bd main -> main + + + +18. Загрузка изменений на машине Алисы: + + +I@DESKTOP-EKCEBSK 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 2), reused 0 (delta 0), pack-reused 0 +Unpacking objects: 100% (3/3), 312 bytes | 62.00 KiB/s, done. +From uit.mpei.ru:NefedovMikA/cs-lab02 + 2247569..dbbf4bd main -> origin/main + + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --oneline --decorate --all --graph +* dbbf4bd (origin/main, origin/HEAD) code: add product +* 2247569 (HEAD -> main) first commit +* f507a7a build: git +* a9d8a17 code: add difference +* 46e6a8d code: add sum +* d864b88 build: add project file +* bd3a459 code: заготовка программы + + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git pull --ff-only +Updating 2247569..dbbf4bd +Fast-forward + main.cpp | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git log --oneline --decorate --all --graph +* afa37f4 (refs/stash) On main: project +|\ +| * 4263737 index on main: 2247569 first commit +|/ +| * dbbf4bd (HEAD -> main, origin/main, origin/HEAD) code: add product +|/ +* 2247569 first commit +* f507a7a build: git +* a9d8a17 code: add difference +* 46e6a8d code: add sum +* d864b88 build: add project file +* bd3a459 code: заготовка программы + + + +19. Добавление деления от имени Алисы: + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add -u + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m 'code: add division' +On branch main +Your branch is up to date with 'origin/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) + main.exe + main.o + project.depend + project.layout + +no changes added to commit (use "git add" and/or "git commit -a") + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add -u + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m 'code: add division' +[main 53f2083] code: add division + 1 file changed, 2 insertions(+), 1 deletion(-) + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git show HEAD +commit 53f2083c8f1ac8b5f49938df1ac42860021fe372 (HEAD -> main) +Author: Alice (NefedovMA) +Date: Mon Apr 7 00:16:37 2025 +0300 + + code: add division + +diff --git a/main.cpp b/main.cpp +index f372c78..38bc977 100644 +--- a/main.cpp ++++ b/main.cpp +@@ -9,5 +9,6 @@ int main() + cin >> a >> b; + cout << "A + B = " << a + b << '\n' + << "A - B = " << a - b << '\n' +- << "A * B = " << a * b << '\n'; ++ << "A * B = " << a * b << '\n' ++ << "A / B = " << a / b << '\n'; + } + +I@DESKTOP-EKCEBSK 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), 325 bytes | 325.00 KiB/s, done. +Total 3 (delta 2), reused 0 (delta 0), pack-reused 0 (from 0) +remote: . Processing 1 references +remote: Processed 1 references in total +To uit.mpei.ru:NefedovMikA/cs-lab02.git + dbbf4bd..53f2083 main -> main + + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob/project (main) +$ git fetch +Enter passphrase for key '/c/Users/I/.ssh/id_ed25519': +remote: Enumerating objects: 5, done. +remote: Counting objects: 100% (5/5), done. +remote: Compressing objects: 100% (3/3), done. +remote: Total 3 (delta 2), reused 0 (delta 0), pack-reused 0 +Unpacking objects: 100% (3/3), 305 bytes | 50.00 KiB/s, done. +From uit.mpei.ru:NefedovMikA/cs-lab02 + dbbf4bd..53f2083 main -> origin/main + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob/project (main) +$ git log --oneline --decorate --all --graph +* 53f2083 (origin/main, origin/HEAD) code: add division +* dbbf4bd (HEAD -> main) code: add product +* 2247569 first commit +* f507a7a build: git +* a9d8a17 code: add difference +* 46e6a8d code: add sum +* d864b88 build: add project file +* bd3a459 code: заготовка программы + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob/project (main) +$ git pull --ff-only +Enter passphrase for key '/c/Users/I/.ssh/id_ed25519': +Updating dbbf4bd..53f2083 +Fast-forward + main.cpp | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob/project (main) +$ git log --oneline --decorate --all --graph +* 53f2083 (HEAD -> main, origin/main, origin/HEAD) code: add division +* dbbf4bd code: add product +* 2247569 first commit +* f507a7a build: git +* a9d8a17 code: add difference +* 46e6a8d code: add sum +* d864b88 build: add project file +* bd3a459 code: заготовка программы + + + +------------------------------------------------------------------------- +Разрешение конфликтов правок при совместной работе +------------------------------------------------------------------------- + + +20. «На машине Алисы» дополнил программу печатью максимума, сделайте коммит и отправьте его на сервер: + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git add -u + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/alice/project (main) +$ git commit -m 'code: add max' +[main 5df5ce3] code: add max + 1 file changed, 2 insertions(+), 1 deletion(-) + +I@DESKTOP-EKCEBSK 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), 337 bytes | 337.00 KiB/s, done. +Total 3 (delta 2), reused 0 (delta 0), pack-reused 0 (from 0) +remote: . Processing 1 references +remote: Processed 1 references in total +To uit.mpei.ru:NefedovMikA/cs-lab02.git + 53f2083..5df5ce3 main -> main + + + +21. «От лица Боба» загрузил коммиты из удаленного хранилища и отобразите историю всех веток: + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob/project (main) +$ git add -u + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob/project (main) +$ git commit -m 'code: add min' +[main c504cc7] code: add min + 1 file changed, 2 insertions(+), 1 deletion(-) + + + +I@DESKTOP-EKCEBSK MINGW64 ~/Desktop/lab02/bob/project (main) +$ git push +Enter passphrase for key '/c/Users/I/.ssh/id_ed25519': +Enter passphrase for key '/c/Users/I/.ssh/id_ed25519': +To uit.mpei.ru:NefedovMikA/cs-lab02.git + ! [rejected] main -> main (fetch first) +error: failed to push some refs to 'uit.mpei.ru:NefedovMikA/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 + +/* Выполнил отображение всех веток и сделал "git rebase --continue", после этого появилось "окно" +/* с большим количеством текста, которое не закрывалось, после закрытия терминала и повторного выполнения +/* команды выдало сообщение :Successfully rebased and updated refs/heads/main" + + + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/bob/project (main|REBASE 1/1) +$ git add main.cpp + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/bob/project (main|REBASE 1/1) +$ git rebase --continue +Successfully rebased and updated refs/heads/main. + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/bob/project (main) +$ git log --oneline --decorate --all --graph +* c504cc7 (HEAD -> main) code: add min +| * 5df5ce3 (origin/main, origin/HEAD) code: add max +|/ +* 53f2083 code: add division +* dbbf4bd code: add product +* 2247569 first commit +* f507a7a build: git +* a9d8a17 code: add difference +* 46e6a8d code: add sum +* d864b88 build: add project file +* bd3a459 code: заготовка программы + + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/bob/project (main) +$ git push +Enumerating objects: 5, done. +Counting objects: 100% (5/5), done. +Delta compression using up to 20 threads +Compressing objects: 100% (3/3), done. +Writing objects: 100% (3/3), 335 bytes | 335.00 KiB/s, done. +Total 3 (delta 2), reused 0 (delta 0), pack-reused 0 (from 0) +remote: . Processing 1 references +remote: Processed 1 references in total +To uit.mpei.ru:NefedovMikA/cs-lab02.git + 8cb6ab8..e11d953 main -> main + + + + +------------------------------------------------------------------------- +Использование веток +------------------------------------------------------------------------- + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git branch double + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git checkout double +Switched to branch 'double' + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (double) +$ git add -u + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (double) +$ git commit -m 'code: replacing int with double' +[double 4f1d9e8] code: replacing int with double + 1 file changed, 1 insertion(+), 1 deletion(-) + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (double) +$ git checkout main +Switched to branch 'main' +Your branch is up to date with 'origin/main'. + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ + + + + + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main|MERGING) +$ git merge double +fatal: You have not concluded your merge (MERGE_HEAD exists). +Please, commit your changes before you merge. + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main|MERGING) +$ git merge double +fatal: You have not concluded your merge (MERGE_HEAD exists). +Please, commit your changes before you merge. + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main|MERGING) +$ git commit -m 'code: replacing int with double' +[main 671a72a] code: replacing int with double + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git push +Enumerating objects: 10, done. +Counting objects: 100% (10/10), done. +Delta compression using up to 20 threads +Compressing objects: 100% (6/6), done. +Writing objects: 100% (6/6), 591 bytes | 591.00 KiB/s, done. +Total 6 (delta 4), reused 0 (delta 0), pack-reused 0 (from 0) +remote: . Processing 1 references +remote: Processed 1 references in total +To uit.mpei.ru:NefedovMikA/cs-lab02.git + e11d953..0aded28 main -> main + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git merge double +Already up to date. + + +I@DESKTOP-EKCEBSK MINGW64~/Desktop/lab02/alice/project (main) +$ git log --oneline --decorate --all --graph +* eb639d7 (HEAD -> main) code: replacing int with double +|\ +| * 9f54099 (origin/main, origin/HEAD) code: add min +* | 81ff2ca code: replacing int with double +* | 671a72a (double) code: replacing int with double +|/ +* 5df5ce3 (doble) code: add max +* 53f2083 code: add division +* dbbf4bd code: add product +| * afa37f4 (refs/stash) On main: project +|/| +| * 4263737 index on main: 2247569 first commit +|/ +* 2247569 first commit +* f507a7a build: git +* a9d8a17 code: add difference +* 46e6a8d code: add sum +* d864b88 build: add project file +* bd3a459 code: заготовка программы \ No newline at end of file