Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

1032 строки
36 KiB
Plaintext

Отчет по лабораторной работе № 2 "Система контроля версий Git"
Выполнил: Виноградов Максим Артёмович
Группа: А-02-24
Проверил:
Примечание: работа выполнялась на Windows.
1. Создал на рабочем столе каталог lab02 и запустил в нем Git Bash, приглашение:
4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02
$
2. Просмотрел файлы в рабочем каталоге можно командой "ls" --- пусто:
4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02
$ ls
4739297@LAPTOP-MFEP4RO7 MINGW64 ~/OneDrive/Рабочий стол/lab02
$
3. Создал каталоги Алисы и Боба, создал каталог "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
4. Инициализировал репозитарий:
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 <file>..." 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 <file> в комит. В конце пишет,что нет файлов для комита, но есть возможность их добавить.
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 <file>..." to unstage)
new file: main.cpp
Untracked files:
(use "git add <file>..." 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 <file>..." 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 <file>..." to update what will be committed)
(use "git restore <file>..." 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 <file>..." 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 <file>..." 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 63ba1ff1d3d2988be130b102614dfb34c64ced17 (HEAD -> main)
Author: Alice (VinogradovMA) <maximvinogr@gmail.com>
Date: Thu Mar 20 21:11:06 2025 +0300
git
commit 1662b88ea45a547e55d36cd99ed1a2810009c681
Author: Alice (VinogradovMA) <maximvinogr@gmail.com>
Date: Thu Mar 20 20:52:59 2025 +0300
code: вывод разности
commit 846901458a6e0c232bc006e3b323f98eb92cc663
Author: Alice (VinogradovMA) <maximvinogr@gmail.com>
Date: Thu Mar 20 20:48:13 2025 +0300
code: вывод суммы
commit d37c0aeecc5e4796aeff0e050d558815b417a6aa
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 63ba1ff1d3d2988be130b102614dfb34c64ced17 (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 1662b88ea45a547e55d36cd99ed1a2810009c681
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 846901458a6e0c232bc006e3b323f98eb92cc663
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 53f077173d34d5c866629aa359e99fc1d5eaac88
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 53f077173d34d5c866629aa359e99fc1d5eaac88
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 63ba1ff1d3d2988be130b102614dfb34c64ced17 (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 63ba1ff1d3d2988be130b102614dfb34c64ced17 (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 63ba1ff1d3d2988be130b102614dfb34c64ced17
commit 63ba1ff1d3d2988be130b102614dfb34c64ced17 (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 1662b88ea45a547e55d36cd99ed1a2810009c681
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 @@
+<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
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 00b78bf7dc233c52d45844233e203ad1a55138f5 (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: заготовка программы