Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
Alice (VinogradovMA) bfda7aab7d
report:changed
3 недель назад
.gitignore ... 1 месяц назад
README.md report:changed 3 недель назад
main.cpp Merge branch 'main' of uit.mpei.ru:VinogradovMA/cs-lab02 1 месяц назад
project.cbp report+depend 3 недель назад
project.depend report+depend 3 недель назад
report.txt report+depend 3 недель назад

README.md

Отчет по лабораторной работе № 2 "Система контроля версий Git"

Выполнил: Виноградов Максим Артёмович Группа: А-02-24 Проверил:

Примечание: работа выполнялась на Windows.

  1. Создал на рабочем столе каталог lab02 и запустил в нем Git Bash, приглашение:

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02 $

  1. Просмотрел файлы в рабочем каталоге можно командой "ls" --- пусто:

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02 $ ls

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02 $

  1. Создал каталоги Алисы и Боба, создал каталог "project", изучил команду "cd" в процессе:

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02 $ mkdir alice

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02 $ mkdir bob

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02 $ cd bob

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob $ cd ..

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02 $ cd alice

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice $ mkdir project

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice $ cd project

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project $ cd ..

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice $ cd project

  1. Инициализировал репозитарий: 4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project $ git init Initialized empty Git repository in C:/Users/4739297/OneDrive/Рабочий стол/lab02/alice/project/.git/

У меня имя ветки по умолчанию не настроено. Git создал ветку под названием master, что видно в приглашении терминала. Имя ветки не менял, так как подсказка не появлялась.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git config user.name 'Alice (VinogradovMA)'

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git config user.email 'maximvinogr@gmail.com'

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git status On branch 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)

После ввода команды, консоль выводит что нет комитов проекта, что файлы проекта не добавлены в git, и их можно добавить командой git add в комит. В конце пишет,что нет файлов для комита, но есть возможность их добавить.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git add main.cpp

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ 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) project.cbp

Пишет, что нет комитов,но есть файлы , которые привязаны к комиту. В конце пишет файлы, которые не привязаны к комиту.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git commit -m 'code: заготовка программы' [master (root-commit) bdea437] code: заготовка программы 1 file changed, 9 insertions(+) create mode 100644 main.cpp

Пишет,что 1 файл был изменен с (последнего) комита, при этом изменено 9 строчек кода, в нашем случае пишет про 9 строчек кода внутри main.cpp.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git add project.cbp warning: LF will be replaced by CRLF in project.cbp. The file will have its original line endings in your working directory

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git status On branch master Changes to be committed: (use "git restore --staged ..." to unstage) new file: project.cbp

Добавляем файл проекта в git, после этого проверяем добавилось ли оно в git, в ответ консоль выводит , что этот файл находится в изменениях ,и можно закомитить эти изменения.\

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git commit -m 'build: добавлен файл проекта' [master 53f0771] build: добавлен файл проекта 1 file changed, 40 insertions(+) create mode 100644 project.cbp

Делаем коммит и получаем в консоли,что 1 файл изменен (то-есть файл проекта).

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git status On branch master 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

no changes added to commit (use "git add" and/or "git commit -a")

Проверяем статус git, выводится, что имеются изменения в файле main.cpp (это как раз те 3 строки, которые мы добавили в функцию main() )

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git add main.cpp

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git commit -m "code: ввод данных" [master d37c0ae] code: ввод данных 1 file changed, 3 insertions(+), 2 deletions(-)

Выбираем файлы, изменения который войдут в коммит, после этого делаем сам коммит. Консоль выводит,что 3 строки добавено, 2 строки удалено, 1 файл изменен.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git add -u

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git commit -m "code: вывод суммы" [master 8469014] code: вывод суммы 1 file changed, 1 insertion(+)

Добавил вывод суммы в программу,после этого добавил в индекс все изменения и сделал коммит. После коммита вывелось, что добавилась одна строка в файле и изменен 1 файл.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git commit -a -m "code: вывод разности" [master 1662b88] code: вывод разности 1 file changed, 2 insertions(+), 1 deletion(-)

Исправил вывод суммы и добавил вывод разности.После этого добавил все изменения и сделал коммит в один шаг. Консоль выводит,что одна строка была убрана, а 2 добавлено, при этом изменился 1 файл.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (master) $ git branch -m main

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)

Поменяем имя ветки на main.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/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)

Забилдили проект.Добавили файл, который будет игнорировать git, файл /bin успешно игнорируется.

4739297@LAPTOP-MFEP4RO7 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)

Добавили в игорирование файл obj, игнорирование успешно.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git add .gitignore

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git commit -m "git" [main 63ba1ff] git 1 file changed, 2 insertions(+) create mode 100644 .gitignore

Добавили в коммит .gitignore, после этого сделали коммит с темой "git".

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log commit 63ba1ff1d3 (HEAD -> main) Author: Alice (VinogradovMA) maximvinogr@gmail.com Date: Thu Mar 20 21:11:06 2025 +0300

git

commit 1662b88ea4 Author: Alice (VinogradovMA) maximvinogr@gmail.com Date: Thu Mar 20 20:52:59 2025 +0300

code: вывод разности

commit 846901458a Author: Alice (VinogradovMA) maximvinogr@gmail.com Date: Thu Mar 20 20:48:13 2025 +0300

code: вывод суммы

commit d37c0aeecc Author: Alice (VinogradovMA) maximvinogr@gmail.com Date: Thu Mar 20 20:40:05 2025 +0300

code: ввод данных

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log --oneline --decorate 63ba1ff (HEAD -> main) git

  • 1662b88 code: вывод разности
  • 8469014 code: вывод суммы
  • d37c0ae code: ввод данных 53f0771 build: добавлен файл проекта bdea437 code: заготовка программы

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log --oneline --decorate --all --graph

  • 63ba1ff (HEAD -> main) git
  • 1662b88 code: вывод разности
  • 8469014 code: вывод суммы
  • d37c0ae code: ввод данных
  • 53f0771 build: добавлен файл проекта
  • bdea437 code: заготовка программы

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log --stat commit 63ba1ff1d3 (HEAD -> main) Author: Alice (VinogradovMA) maximvinogr@gmail.com Date: Thu Mar 20 21:11:06 2025 +0300

git

.gitignore | 2 ++ 1 file changed, 2 insertions(+)

commit 1662b88ea4 Author: Alice (VinogradovMA) maximvinogr@gmail.com Date: Thu Mar 20 20:52:59 2025 +0300

code: вывод разности

main.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)

commit 846901458a Author: Alice (VinogradovMA) maximvinogr@gmail.com Date: Thu Mar 20 20:48:13 2025 +0300

code: вывод суммы

В последнем коммите выводится автор коммита, дату и время,после этого пишется ,что добавлен файл .gitignore, где добавилось 2 строки.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log --grep "build:" commit 53f077173d Author: Alice (VinogradovMA) maximvinogr@gmail.com Date: Thu Mar 20 20:32:42 2025 +0300

build: добавлен файл проекта

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log -- project.cbp commit 53f077173d Author: Alice (VinogradovMA) maximvinogr@gmail.com Date: Thu Mar 20 20:32:42 2025 +0300

build: добавлен файл проекта

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git show HEAD commit 63ba1ff1d3 (HEAD -> main) Author: Alice (VinogradovMA) maximvinogr@gmail.com Date: Thu Mar 20 21:11:06 2025 +0300

git

diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4c7473d --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/bin +/obj

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git show main commit 63ba1ff1d3 (HEAD -> main) Author: Alice (VinogradovMA) maximvinogr@gmail.com Date: Thu Mar 20 21:11:06 2025 +0300

git

diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4c7473d --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/bin +/obj

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git show 63ba1ff1d3 commit 63ba1ff1d3 (HEAD -> main) Author: Alice (VinogradovMA) maximvinogr@gmail.com Date: Thu Mar 20 21:11:06 2025 +0300

git

diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..4c7473d --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/bin +/obj

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git show HEAD~1 commit 1662b88ea4 Author: Alice (VinogradovMA) maximvinogr@gmail.com Date: Thu Mar 20 20:52:59 2025 +0300

code: вывод разности

diff --git a/main.cpp b/main.cpp index 2fbd623..fd75bba 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;
  • cout << "A + B = " << a + b << '\n'
  • << "A - B = " << a - b << '\n';
    

}

Смотрим предпоследний коммит , где изменялся код программы.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git diff

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git diff diff --git a/main.cpp b/main.cpp index fd75bba..91f8982 100644 --- a/main.cpp +++ b/main.cpp @@ -8,5 +8,6 @@ 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';
    

}

Добавили строку вывода произведения, после этого просмотрели изменения.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/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 2fbd623..91f8982 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;
  • cout << "A + B = " << a + b << '\n'
  • << "A - B = " << a - b << '\n'
    
  • << "A * B = " << a * b << '\n';
    

}

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/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 2fbd623..fd75bba 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;
  • cout << "A + B = " << a + b << '\n'
  • << "A - B = " << a - b << '\n';
    

}

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git commit -a -m "code: вывод произведения" [main 0364b6e] code: вывод произведения 1 file changed, 2 insertions(+), 1 deletion(-)

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git diff head~5 head~1 diff --git a/main.cpp b/main.cpp index b4392ec..fd75bba 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 new file mode 100644 index 0000000..99bb702 --- /dev/null +++ b/project.cbp @@ -0,0 +1,40 @@ +

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git reset --hard HEAD~1 HEAD is now at 63ba1ff git

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git checkout HEAD -- main.cpp

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/c/Users/4739297/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /c/Users/4739297/.ssh/id_rsa Your public key has been saved in /c/Users/4739297/.ssh/id_rsa.pub The key fingerprint is: SHA256:KgnXVgY9vFWfWD63lECXhI4/w9HHlJlb0XAAYTnjgqI 4739297@LAPTOP-MFEP4RO7 The key's randomart image is: +---[RSA 3072]----+ | .o .****O| | .+ ..+oB=| | o= .+o=+| | ..oo ...o.=+| | . ..o.S .o ...| | oEo . = | | o . o | | . | | | +----[SHA256]-----+

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) eval(ssh-agent -s) Agent pid 1258

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ ssh-add Enter passphrase for /c/Users/4739297/.ssh/id_rsa: Identity added: /c/Users/4739297/.ssh/id_rsa (4739297@LAPTOP-MFEP4RO7)

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ cat ~/.ssh/id_rsa.pub ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDlwe9oD9NCJxkGtzJWiwj4vFOnXbBnL1+N+d9QYGLcyJVWg7KFfNqaapUOdVCdVssfONS0QFpJvjrPvuzFfE0kp6iQlI+Q2Zikg1+9Qde0rY15oht1POWHfT8gULwJBwgOByD2gXbH0UYG3FYVBgU9Y8S1YMsbv5Xl3V34/UVVQZDziUztBAQ2CXsPTWsdESGAyRKFAbZ0SpS+zB7nmiAGZsiZXUkxXl6kJz5EuACRDdKESC0SUQSJ5Xos6hAnWX5W6NFe0VvTXQ1DqAa0NXJkVtPdM7bz/VQTrE5FgNVWCyNG+i6X5WS6oPPlWYv6zhoG6j8uph5nnVymBhMzypaui1ywXvNWomwgVPygl0Hc2U2KBVWdeJmaZ8QJCo3McXpk41tl8moBg1oCtXsaF5zBL7kZpbSM+FQfj/JrswWm/cFufwhRvV8FQXfrC7pPj2I4z7RPQMC3VQUzqa3mzyhvbgI5LyiZkli3FTI20n+m33rgg2FLLZOOLlkRpAH5e+M= 4739297@LAPTOP-MFEP4RO7

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ touch README.md git add README.md git commit -m "first commit" git remote add origin git@uit.mpei.ru:VinogradovMA/cs-lab02.git git push -u origin main 4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git init Reinitialized existing Git repository in C:/Users/4739297/OneDrive/Рабочий стол/lab02/alice/project/.git/

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git checkout -b main fatal: A branch named 'main' already exists.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git add README.md

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git commit -m "first commit" [main 08d4449] first commit 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 README.md

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git remote add origin git@uit.mpei.ru:VinogradovMA/cs-lab02.git

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/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: 21, done. Counting objects: 100% (21/21), done. Delta compression using up to 8 threads Compressing objects: 100% (18/18), done. Writing objects: 100% (21/21), 2.40 KiB | 819.00 KiB/s, done. Total 21 (delta 3), reused 0 (delta 0), pack-reused 0 remote: . Processing 1 references remote: Processed 1 references in total To uit.mpei.ru:VinogradovMA/cs-lab02.git

  • [new branch] main -> main Branch 'main' set up to track remote branch 'main' from 'origin'.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob $ git clone git@uit.mpei.ru:VinogradovMA/cs-lab02.git project Cloning into 'project'... Enter passphrase for key '/c/Users/4739297/.ssh/id_rsa': remote: Enumerating objects: 21, done. remote: Counting objects: 100% (21/21), done. remote: Compressing objects: 100% (18/18), done. remote: Total 21 (delta 3), reused 0 (delta 0), pack-reused 0 Receiving objects: 100% (21/21), done. Resolving deltas: 100% (3/3), done.

Скопировали проект для боба.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob $ cd project

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git init Reinitialized existing Git repository in C:/Users/4739297/OneDrive/Рабочий стол/lab02/bob/project/.git/

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git config user.name 'Bob (VinogardovMA)'

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git config user.email 'maximvinogr@gmail.com'

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git commit -a -m "code: правка отступов" [main 00b78bf] code: правка отступов 1 file changed, 2 insertions(+), 2 deletions(-)

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git show commit 00b78bf7dc (HEAD -> main) Author: Bob (VinogardovMA) maximvinogr@gmail.com Date: Fri Mar 21 13:42:16 2025 +0300

code: правка отступов

diff --git a/main.cpp b/main.cpp index 91f8982..f372c78 100644 --- a/main.cpp +++ b/main.cpp @@ -8,6 +8,6 @@ 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'
    
  •     << "A * B = " << a * b << '\n';
    

}

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git push Enter passphrase for key '/c/Users/4739297/.ssh/id_rsa': Enumerating objects: 8, done. Counting objects: 100% (8/8), done. Delta compression using up to 8 threads Compressing objects: 100% (6/6), done. Writing objects: 100% (6/6), 570 bytes | 570.00 KiB/s, done. Total 6 (delta 4), reused 0 (delta 0), pack-reused 0 remote: . Processing 1 references remote: Processed 1 references in total To uit.mpei.ru:VinogradovMA/cs-lab02.git 08d4449..00b78bf main -> main

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git fetch Enter passphrase for key '/c/Users/4739297/.ssh/id_rsa': remote: Enumerating objects: 8, done. remote: Counting objects: 100% (8/8), done. remote: Compressing objects: 100% (6/6), done. remote: Total 6 (delta 4), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (6/6), 550 bytes | 21.00 KiB/s, done. From uit.mpei.ru:VinogradovMA/cs-lab02 08d4449..00b78bf main -> origin/main

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log --oneline --decorate --all --graph

  • 00b78bf (origin/main) code: правка отступов
  • 59202e8 code: вывод произведения
  • 08d4449 (HEAD -> main) first commit
  • 63ba1ff git
  • 1662b88 code: вывод разности
  • 8469014 code: вывод суммы
  • d37c0ae code: ввод данных
  • 53f0771 build: добавлен файл проекта
  • bdea437 code: заготовка программы

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git pull --ff-only Enter passphrase for key '/c/Users/4739297/.ssh/id_rsa': Updating 08d4449..00b78bf Fast-forward main.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git commit -a -m "code: вывод частного" warning: LF will be replaced by CRLF in project.cbp. The file will have its original line endings in your working directory [main 0655b6f] code: вывод частного 3 files changed, 8 insertions(+), 1 deletion(-)

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git push Enter passphrase for key '/c/Users/4739297/.ssh/id_rsa': Enumerating objects: 9, done. Counting objects: 100% (9/9), done. Delta compression using up to 8 threads Compressing objects: 100% (4/4), done. Writing objects: 100% (5/5), 567 bytes | 283.00 KiB/s, done. Total 5 (delta 2), reused 0 (delta 0), pack-reused 0 remote: . Processing 1 references remote: Processed 1 references in total To uit.mpei.ru:VinogradovMA/cs-lab02.git 00b78bf..0655b6f main -> main

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git fetch Enter passphrase for key '/c/Users/4739297/.ssh/id_rsa': remote: Enumerating objects: 9, done. remote: Counting objects: 100% (9/9), done. remote: Compressing objects: 100% (4/4), done. remote: Total 5 (delta 2), reused 0 (delta 0), pack-reused 0 Unpacking objects: 100% (5/5), 547 bytes | 32.00 KiB/s, done. From uit.mpei.ru:VinogradovMA/cs-lab02 00b78bf..0655b6f main -> origin/main

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git log --oneline --decorate --all --graph

  • 0655b6f (origin/main, origin/HEAD) code: вывод частного
  • 00b78bf (HEAD -> main) code: правка отступов
  • 59202e8 code: вывод произведения
  • 08d4449 first commit
  • 63ba1ff git
  • 1662b88 code: вывод разности
  • 8469014 code: вывод суммы
  • d37c0ae code: ввод данных
  • 53f0771 build: добавлен файл проекта
  • bdea437 code: заготовка программы

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git pull --ff-only Enter passphrase for key '/c/Users/4739297/.ssh/id_rsa': Updating 00b78bf..0655b6f Fast-forward .gitignore | 1 + main.cpp | 3 ++- project.cbp | 5 +++++ 3 files changed, 8 insertions(+), 1 deletion(-)

дополните программу печатью максимума, сделайте коммит и отправьте его на сервер:

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git commit -a -m "code: вывод max" [main 5f7fed3] code: вывод max 1 file changed, 3 insertions(+), 2 deletions(-)

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git push Enter passphrase for key '/c/Users/4739297/.ssh/id_rsa': Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 8 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 358 bytes | 358.00 KiB/s, done. Total 3 (delta 2), reused 0 (delta 0), pack-reused 0 remote: . Processing 1 references remote: Processed 1 references in total To uit.mpei.ru:VinogradovMA/cs-lab02.git 0655b6f..5f7fed3 main -> main

«На машине Боба» дополните программу печатью минимума, сделайте коммит и попытайтесь отправить его на сервер. Как можно видеть, удаленный репозитарий не принимает изменений: коммит Боба основан не на последнем существующем коммите.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git commit -a -m "code: вывод min" [main bc6dcde] code: вывод min 1 file changed, 3 insertions(+), 2 deletions(-)

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git push Enter passphrase for key '/c/Users/4739297/.ssh/id_rsa': To uit.mpei.ru:VinogradovMA/cs-lab02.git ! [rejected] main -> main (fetch first) error: failed to push some refs to 'uit.mpei.ru:VinogradovMA/cs-lab02.git' hint: Updates were rejected because the remote contains work that you do hint: not have locally. This is usually caused by another repository pushing hint: to the same ref. You may want to first integrate the remote changes hint: (e.g., 'git pull ...') before pushing again. hint: See the 'Note about fast-forwards' in 'git push --help' for details.

«От лица Боба» загрузите коммиты из удаленного хранилища и отобразите историю всех веток — результат нужно представить в отчете.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git fetch Enter passphrase for key '/c/Users/4739297/.ssh/id_rsa': 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), 338 bytes | 48.00 KiB/s, done. From uit.mpei.ru:VinogradovMA/cs-lab02 0655b6f..5f7fed3 main -> origin/main

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git log --oneline --decorate --all --graph

  • bc6dcde (HEAD -> main) code: вывод min | * 5f7fed3 (origin/main, origin/HEAD) code: вывод max |/
  • 0655b6f code: вывод частного
  • 00b78bf code: правка отступов
  • 59202e8 code: вывод произведения
  • 08d4449 first commit
  • 63ba1ff git
  • 1662b88 code: вывод разности
  • 8469014 code: вывод суммы
  • d37c0ae code: ввод данных
  • 53f0771 build: добавлен файл проекта
  • bdea437 code: заготовка программы

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git rebase origin/main error: could not apply bc6dcde... code: вывод min Resolve all conflicts manually, mark them as resolved with "git add/rm <conflicted_files>", then run "git rebase --continue". You can instead skip this commit: run "git rebase --skip". To abort and get back to the state before "git rebase", run "git rebase --abort". Could not apply bc6dcde... code: вывод min Auto-merging main.cpp CONFLICT (content): Merge conflict in main.cpp

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main|REBASE 1/1)

Выдает ошибку,что нужно сделать слияние,дабы убрать конфликт в главном классе.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main|REBASE 1/1) $ git add main.cpp

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main|REBASE 1/1) $ git rebase --continue [detached HEAD 0597d37] code: вывод min 1 file changed, 2 insertions(+), 1 deletion(-) Successfully rebased and updated refs/heads/main.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git log --oneline --decorate --all --graph

  • 0597d37 (HEAD -> main) code: вывод min
  • 5f7fed3 (origin/main, origin/HEAD) code: вывод max
  • 0655b6f code: вывод частного
  • 00b78bf code: правка отступов
  • 59202e8 code: вывод произведения
  • 08d4449 first commit
  • 63ba1ff git
  • 1662b88 code: вывод разности
  • 8469014 code: вывод суммы
  • d37c0ae code: ввод данных
  • 53f0771 build: добавлен файл проекта
  • bdea437 code: заготовка программы

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main) $ git push Enter passphrase for key '/c/Users/4739297/.ssh/id_rsa': Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 8 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 334 bytes | 334.00 KiB/s, done. Total 3 (delta 2), reused 0 (delta 0), pack-reused 0 remote: . Processing 1 references remote: Processed 1 references in total To uit.mpei.ru:VinogradovMA/cs-lab02.git 5f7fed3..0597d37 main -> main

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git branch double

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git checkout double Switched to branch 'double'

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (double) $ git commit -a -m "code:double" [double ff96c83] code:double 1 file changed, 1 insertion(+), 1 deletion(-)

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (double) $ git checkout main Switched to branch 'main' Your branch is up to date with 'origin/main'.

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git merge double Updating 5f7fed3..ff96c83 Fast-forward main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git push Enter passphrase for key '/c/Users/4739297/.ssh/id_rsa': Enumerating objects: 10, done. Counting objects: 100% (10/10), done. Delta compression using up to 8 threads Compressing objects: 100% (6/6), done. Writing objects: 100% (6/6), 608 bytes | 608.00 KiB/s, done. Total 6 (delta 4), reused 0 (delta 0), pack-reused 0 remote: . Processing 1 references remote: Processed 1 references in total To uit.mpei.ru:VinogradovMA/cs-lab02.git 0597d37..8201e88 main -> main

4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main) $ git log --oneline --decorate --all --graph

  • 8201e88 (HEAD -> main, origin/main) Merge branch 'main' of uit.mpei.ru:VinogradovMA/cs-lab02 |
    | * 0597d37 code: вывод min
  • | ff96c83 (double) code:double |/
  • 5f7fed3 code: вывод max
  • 0655b6f code: вывод частного
  • 00b78bf code: правка отступов
  • 59202e8 code: вывод произведения
  • 08d4449 first commit
  • 63ba1ff git
  • 1662b88 code: вывод разности
  • 8469014 code: вывод суммы
  • d37c0ae code: ввод данных
  • 53f0771 build: добавлен файл проекта
  • bdea437 code: заготовка программы