Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
1190 строки
43 KiB
Plaintext
1190 строки
43 KiB
Plaintext
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Отчет по лабораторной работе №2
|
|
«Система контроля версии Git»
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Выполнил: Кузин В.В.
|
|
Группа: А-03-22
|
|
Проверил: Козлюк Д.А.
|
|
Филатов С.А.
|
|
|
|
|
|
|
|
|
|
|
|
Цель работы
|
|
Знать понятия и компоненты систем контроля версий (СКВ), порядок и приемы работы с ними.
|
|
Уметь участвовать в командной разработке, используя конкретную СКВ — Git, а также популярный хостинг репозитариев — GitHub.
|
|
|
|
Ход работы:
|
|
Вход в терминал и создание структуры каталогов
|
|
● Создаем папки пользователей (mkdir alice, mkdir bob)
|
|
● В папке пользователя alice создаем папку project
|
|
Инициализация репозитария и настройка Git
|
|
● Инициализируем хранилище git (git init)
|
|
● Настраиваем папки пользователя, с которым будем работать:
|
|
$ git init
|
|
Initialized empty Git repository in C:/Users/жесткий п/Desktop/lab_02/alice/project/.git/
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git config user.name 'Alice(KuzinVV)'
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git config user.email 'KuzinVV@mpei.ru'
|
|
|
|
|
|
|
|
Создание коммитов:
|
|
Занесение файлов под контроль версий
|
|
● Просматриваем состояние рабочей копии(git status)
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git status
|
|
On branch master
|
|
|
|
No commits yet
|
|
|
|
Untracked files:
|
|
(use "git add <file>..." 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)
|
|
|
|
|
|
В первой строке ссылка HEAD указывает на ветку main
|
|
Вторая стр. говорит о том, что еще не было создано коммитов
|
|
Третья стр. показывает не отслеживаемые файлы в хранилище git, и подсказывает как их добавить
|
|
Последняя стр. говорит о том, что нет добавленных (отслеживаемых) файлов, которые можно будет закоммитить
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git add main.cpp
|
|
|
|
Появилась строка с файлами в индексе, стоящими в очереди на коммит
|
|
|
|
Составление сообщений к коммитам
|
|
● Создаем 2 коммита с информацией о коде программы и просматриваем текущий статус:
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git commit -m 'code: заготовка программы'
|
|
[master (root-commit) 034736f] code: заготовка программы
|
|
1 file changed, 9 insertions(+)
|
|
create mode 100644 main.cpp
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git add project.cbp
|
|
warning: in the working copy of 'project.cbp', LF will be replaced by CRLF the next time Git touches it
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git commit -m 'build: добавлен файл проекта'
|
|
[master c07a302] build: добавлен файл проекта
|
|
1 file changed, 40 insertions(+)
|
|
create mode 100644 project.cbp
|
|
|
|
|
|
● После добавления в программу ввода 2х чисел видим, что файл main.cpp был изменен
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/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
|
|
|
|
Untracked files:
|
|
(use "git add <file>..." to include in what will be committed)
|
|
bin/
|
|
obj/
|
|
|
|
no changes added to commit (use "git add" and/or "git commit -a")
|
|
|
|
|
|
● Проделываем ряд изменений с кодом программы и делаем коммиты несколькими способами
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git add main.cpp
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git commit -m "Ввод двух чисел"
|
|
[master 4bba4b5] Ввод двух чисел
|
|
1 file changed, 4 insertions(+), 1 deletion(-)
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git add -u
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git commit -m "Вывод суммы"
|
|
[master 58baa60] Вывод суммы
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git commit -u
|
|
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
|
|
|
|
Untracked files:
|
|
(use "git add <file>..." to include in what will be committed)
|
|
bin/Debug/project.exe
|
|
obj/Debug/main.o
|
|
|
|
no changes added to commit (use "git add" and/or "git commit -a")
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git add -u
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git commit -m "Вывод разности"
|
|
[master 12ceb72] Вывод разности
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
|
|
|
|
|
|
|
|
• Создадим файл .gitignore, необходимый, чтобы скрыть файлы bin/, / obj/, прописываем там это и видим, что по мере заполнения файла, ненужный нам файлы пропали из git status:
|
|
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git status
|
|
On branch master
|
|
Untracked files:
|
|
(use "git add <file>..." to include in what will be committed)
|
|
.gitignore
|
|
obj/
|
|
|
|
nothing added to commit but untracked files present (use "git add" to track)
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git status
|
|
On branch master
|
|
Untracked files:
|
|
(use "git add <file>..." to include in what will be committed)
|
|
.gitignore
|
|
|
|
nothing added to commit but untracked files present (use "git add" to track)
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git add .gitignore
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git commit -m "git"
|
|
[master 883899e] git
|
|
1 file changed, 2 insertions(+)
|
|
create mode 100644 .gitignore
|
|
|
|
|
|
|
|
|
|
|
|
Просмотр истории
|
|
● С помощью команды git log и различных ее опций просматриваем журнал коммитов
|
|
Используем команду git log –stat
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git log --stat
|
|
commit 883899eb12349e2a5cb9c7aea3e83d1c70582e79 (HEAD -> master)
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 14:19:39 2023 +0300
|
|
|
|
git
|
|
|
|
.gitignore | 2 ++
|
|
1 file changed, 2 insertions(+)
|
|
|
|
commit 12ceb72ce75e2a6e37bb112ace06239b906b4dbe
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 14:16:44 2023 +0300
|
|
|
|
Вывод разности
|
|
|
|
main.cpp | 3 ++-
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
commit 58baa60e6e5d5e7f0fd0f1ad24332ab4331bc81f
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 14:14:38 2023 +0300
|
|
|
|
Вывод суммы
|
|
|
|
main.cpp | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
commit 4bba4b52fe5169f122a0f40f6d93b611c5f136e3
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 14:12:33 2023 +0300
|
|
|
|
Ввод двух чисел
|
|
|
|
main.cpp | 5 ++++-
|
|
1 file changed, 4 insertions(+), 1 deletion(-)
|
|
|
|
commit c07a3027f31e7364ff2e8149f2fa91c292f82f28
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 14:10:01 2023 +0300
|
|
|
|
build: добавлен файл проекта
|
|
|
|
project.cbp | 40 ++++++++++++++++++++++++++++++++++++++++
|
|
1 file changed, 40 insertions(+)
|
|
|
|
commit 034736faafb60a5f98cf6ae17f485a824938ab8f
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 14:06:50 2023 +0300
|
|
|
|
code: заготовка программы
|
|
|
|
main.cpp | 9 +++++++++
|
|
1 file changed, 9 insertions(+)
|
|
|
|
|
|
• С помощью команды $ git log --oneline –decorate проведем то же самое действие, получив сокращенный журнал коммитов
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git log --oneline --decorate
|
|
883899e (HEAD -> master) git
|
|
12ceb72 Вывод разности
|
|
58baa60 Вывод суммы
|
|
4bba4b5 Ввод двух чисел
|
|
c07a302 build: добавлен файл проекта
|
|
034736f code: заготовка программы
|
|
|
|
|
|
• Команда
|
|
$ git log --oneline --decorate --all –graph позволяет увидеть журнал коммитов с характерными указателями
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git log --oneline --decorate --all --graph
|
|
* 883899e (HEAD -> master) git
|
|
* 12ceb72 Вывод разности
|
|
* 58baa60 Вывод суммы
|
|
* 4bba4b5 Ввод двух чисел
|
|
* c07a302 build: добавлен файл проекта
|
|
* 034736f code: заготовка программы
|
|
|
|
|
|
$ git log --grep "build: команда позволяет выбрать и просмотреть выбранный коммит:
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git log -- project.cbp
|
|
commit c07a3027f31e7364ff2e8149f2fa91c292f82f28
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 14:10:01 2023 +0300
|
|
|
|
build: добавлен файл проекта
|
|
|
|
|
|
|
|
|
|
|
|
$ git log -- project.cbp показывает коммит из файла:
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git log -- project.cbp
|
|
commit c07a3027f31e7364ff2e8149f2fa91c292f82f28
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 14:10:01 2023 +0300
|
|
|
|
build: добавлен файл проекта
|
|
|
|
|
|
|
|
|
|
|
|
|
|
● Далее тремя способами просматриваем информацию о предпоследнем коммите
|
|
(результат всех способов один, поэтому в отчете не повторялся)
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git show HEAD
|
|
commit 883899eb12349e2a5cb9c7aea3e83d1c70582e79 (HEAD -> master)
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 14:19:39 2023 +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
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git show HEAD~1
|
|
commit 12ceb72ce75e2a6e37bb112ace06239b906b4dbe
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 14:16:44 2023 +0300
|
|
|
|
Вывод разности
|
|
|
|
diff --git a/main.cpp b/main.cpp
|
|
index 6de6dd2..5371b30 100644
|
|
--- a/main.cpp
|
|
+++ b/main.cpp
|
|
@@ -7,6 +7,7 @@ int main()
|
|
cout << "Enter A and B: ";
|
|
int a, b;
|
|
cin >> a >> b;
|
|
- cout << "A + B = " << a + b << '\n';
|
|
+ cout << "A + B = " << a + b << '\n'
|
|
+ << "A - B = " << a - b << '\n';
|
|
return 0;
|
|
}
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git show master HEAD~1
|
|
commit 883899eb12349e2a5cb9c7aea3e83d1c70582e79 (HEAD -> master)
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 14:19:39 2023 +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
|
|
|
|
commit 12ceb72ce75e2a6e37bb112ace06239b906b4dbe
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 14:16:44 2023 +0300
|
|
|
|
Вывод разности
|
|
|
|
diff --git a/main.cpp b/main.cpp
|
|
index 6de6dd2..5371b30 100644
|
|
--- a/main.cpp
|
|
+++ b/main.cpp
|
|
@@ -7,6 +7,7 @@ int main()
|
|
cout << "Enter A and B: ";
|
|
int a, b;
|
|
cin >> a >> b;
|
|
- cout << "A + B = " << a + b << '\n';
|
|
+ cout << "A + B = " << a + b << '\n'
|
|
+ << "A - B = " << a - b << '\n';
|
|
return 0;
|
|
}
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git show ^C
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git show 12ceb7
|
|
commit 12ceb72ce75e2a6e37bb112ace06239b906b4dbe
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 14:16:44 2023 +0300
|
|
|
|
Вывод разности
|
|
|
|
diff --git a/main.cpp b/main.cpp
|
|
index 6de6dd2..5371b30 100644
|
|
--- a/main.cpp
|
|
+++ b/main.cpp
|
|
@@ -7,6 +7,7 @@ int main()
|
|
cout << "Enter A and B: ";
|
|
int a, b;
|
|
cin >> a >> b;
|
|
- cout << "A + B = " << a + b << '\n';
|
|
+ cout << "A + B = " << a + b << '\n'
|
|
+ << "A - B = " << a - b << '\n';
|
|
return 0;
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
● Далее тремя способами просматриваем информацию о предпоследнем коммите
|
|
(результат всех способов один, поэтому в отчете не повторялся)
|
|
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git diff
|
|
diff --git a/main.cpp b/main.cpp
|
|
index 5371b30..fbd9488 100644
|
|
--- a/main.cpp
|
|
+++ b/main.cpp
|
|
@@ -8,6 +8,7 @@ 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';
|
|
return 0;
|
|
}
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ 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 6de6dd2..fbd9488 100644
|
|
--- a/main.cpp
|
|
+++ b/main.cpp
|
|
@@ -7,6 +7,8 @@ int main()
|
|
cout << "Enter A and B: ";
|
|
int a, b;
|
|
cin >> a >> b;
|
|
- cout << "A + B = " << a + b << '\n';
|
|
+ cout << "A + B = " << a + b << '\n'
|
|
+ << "A - B = " << a - b << '\n'
|
|
+ << "A * B = " << a * b << '\n';
|
|
return 0;
|
|
}
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git commit~5 HEAD
|
|
git: 'commit~5' is not a git command. See 'git --help'.
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git diff HEAD~5 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 b4392ec..5371b30 100644
|
|
--- a/main.cpp
|
|
+++ b/main.cpp
|
|
@@ -4,6 +4,10 @@ using namespace std;
|
|
|
|
int main()
|
|
{
|
|
- cout << "Hello world!" << endl;
|
|
+ cout << "Enter A and B: ";
|
|
+ int a, b;
|
|
+ cin >> a >> b;
|
|
+ cout << "A + B = " << a + b << '\n'
|
|
+ << "A - B = " << a - b << '\n';
|
|
return 0;
|
|
}
|
|
diff --git a/project.cbp b/project.cbp
|
|
new file mode 100644
|
|
index 0000000..99bb702
|
|
--- /dev/null
|
|
+++ b/project.cbp
|
|
@@ -0,0 +1,40 @@
|
|
master)
|
|
$ git diff HEAD~5 HEAD~1
|
|
diff --git a/main.cpp b/main.cpp
|
|
index b4392ec..5371b30 100644
|
|
--- a/main.cpp
|
|
+++ b/main.cpp
|
|
@@ -4,6 +4,10 @@ using namespace std;
|
|
|
|
int main()
|
|
{
|
|
- cout << "Hello world!" << endl;
|
|
+ cout << "Enter A and B: ";
|
|
+ int a, b;
|
|
+ cin >> a >> b;
|
|
+ cout << "A + B = " << a + b << '\n'
|
|
+ << "A - B = " << a - b << '\n';
|
|
return 0;
|
|
}
|
|
diff --git a/project.cbp b/project.cbp
|
|
new file mode 100644
|
|
index 0000000..99bb702
|
|
--- /dev/null
|
|
+++ b/project.cbp
|
|
@@ -0,0 +1,40 @@
|
|
|
|
|
|
В качестве первой стр. мы видим входные данные команды для сравнения файлов
|
|
Далее идет заголовок с легендой изменения, место измененного кода и измененная функция
|
|
На след. строке идут строки вокруг измененной части, удаленные и добавленные строки
|
|
|
|
Откат коммита
|
|
Добавляем коммит вывода произведения и командой
|
|
$ git reset --hard HEAD~1 удаляем его
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git add main.cpp
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git commit -m "Вывод произведения"
|
|
[master 652d0a6] Вывод произведения
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git reset --hard HEAD~1
|
|
HEAD is now at 883899e git
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git checkout HEAD -- main.cpp
|
|
|
|
|
|
|
|
|
|
Создание ключа для обмена кодом
|
|
|
|
|
|
Обмен кодом через удаленное хранилище
|
|
Обмен кодом через удалённое хранилище. Для загрузки данных в репозитарий GitHub будет использоваться протокол SSH. Поэтому для обмена данными с сервером нужно сгенерировать пару из открытого и закрытого ключей
|
|
|
|
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ ssh-keygen
|
|
Generating public/private rsa key pair.
|
|
Enter file in which to save the key (/c/Users/жесткий п/.ssh/id_rsa):
|
|
/c/Users/жесткий п/.ssh/id_rsa already exists.
|
|
Overwrite (y/n)? y
|
|
Enter passphrase (empty for no passphrase):
|
|
Enter same passphrase again:
|
|
Passphrases do not match. Try again.
|
|
Enter passphrase (empty for no passphrase):
|
|
Enter same passphrase again:
|
|
Your identification has been saved in /c/Users/жесткий п/.ssh/id_rsa
|
|
Your public key has been saved in /c/Users/жесткий п/.ssh/id_rsa.pub
|
|
The key fingerprint is:
|
|
SHA256:DUKXJtEjr+Hp6Ja2QjeXeMHgLTCxgpnD/TNnWBrrw4o жесткий п@DESKTOP-UVLMK4V
|
|
The key's randomart image is:
|
|
+---[RSA 3072]----+
|
|
| .. oo.. |
|
|
|oo+...o.= |
|
|
|*..= =.*.. |
|
|
| o + @..o |
|
|
| @ OS . |
|
|
| . * % |
|
|
| . . @ |
|
|
| o * o |
|
|
| E *o. |
|
|
+----[SHA256]-----+
|
|
|
|
|
|
|
|
Также после этого отображаются уникальные данные для ключа. Поскольку в работе вводить пароль при каждом использовании ключа может быть неудобно, можно использовать программу-агент, которую достаточно запустить перед началом работы
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ eval $(ssh-agent -s)
|
|
Agent pid 2253
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ ssh-add
|
|
Enter passphrase for /c/Users/жесткий п/.ssh/id_rsa:
|
|
Identity added: /c/Users/жесткий п/.ssh/id_rsa (жесткий п@DESKTOP-UVLMK4V)
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ cat ~/.ssh/id_rsa.pub
|
|
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCe01bfFFoj5jJzCMFztO+qqcbb20izocEYasN7k6zfkURcAEexN62KSLoVq7P99g3+UL4wDm05c5JGOQne32/1bH6p6KrWBnbCO78Y6wC+X7F1mV00+KaoEN05OhhJnpj0lL7N+p6WWa/dhUO/iRL7tY9sMIv9D81qEKnyvoJWN1Ks+qzVJGBEtXl39IAB1DWml727HuZ34MudYA5fzI1mOe2sbmsk5yPD0dzhvG+ccioo77++oYY6KVuufCO7l+2HJN0nVmcyaKC5MtU9vrHlG8kQClSS38CUGmrQjvHxkpn6fn9sU8D6rXwGNyBQ7QrwMPZJbBAugAx+f8XVr/5AsX24Tk5g8Y1eHSZBMsM/bRvXkNLKgqecqJZdnyFoSjtcBh1lcNYQxc9/tzDBMwVE8D3enPW7RNxI5qOBClc1p03u0A4pSb4QvbSiDBWnbQ7apaQrUuPnVcG/q1T3W0IIrL5pTdBeav45ba6kUH+r73EAkZYUk2MOOCrskawaa8k= жесткий п@DESKTOP-UVLMK4V
|
|
|
|
|
|
Затем в настройках аккаунта GitHub нужно добавить публичный ключ, который по умолчанию записывается в файл id_rsa.pub.
|
|
● Теперь добавим репозитарий на который будем загружать хранилище git, и загрузим хранилище git на GitHub с помощью команды git push.
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git remote add origin git@uit.mpei.ru:KuzinVV/cs-lab_02.git
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git push -u origin main
|
|
error: src refspec main does not match any
|
|
error: failed to push some refs to 'uit.mpei.ru:KuzinVV/cs-lab_02.git'
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git push
|
|
fatal: The current branch master has no upstream branch.
|
|
To push the current branch and set the remote as upstream, use
|
|
|
|
git push --set-upstream origin master
|
|
|
|
To have this happen automatically for branches without a tracking
|
|
upstream, see 'push.autoSetupRemote' in 'git help config'.
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git push --set-upstream origin master
|
|
Enumerating objects: 18, done.
|
|
Counting objects: 100% (18/18), done.
|
|
Delta compression using up to 4 threads
|
|
Compressing objects: 100% (16/16), done.
|
|
Writing objects: 100% (18/18), 2.23 KiB | 43.00 KiB/s, done.
|
|
Total 18 (delta 2), reused 0 (delta 0), pack-reused 0
|
|
remote: . Processing 1 references
|
|
remote: Processed 1 references in total
|
|
To uit.mpei.ru:KuzinVV/cs-lab_02.git
|
|
* [new branch] master -> master
|
|
branch 'master' set up to track 'origin/master'.
|
|
|
|
|
|
|
|
|
|
● К работе присоединяется боб. Клонируем репозитарий с помощью git clone.
|
|
● $ git clone git@github.com:Kra1k/cs-lab02.git
|
|
● Cloning into 'cs-lab_02'...
|
|
● Enter passphrase for key '/c/Users/жесткий п/.ssh/id_rsa':
|
|
● remote: Enumerating objects: 20, done.
|
|
● remote: Counting objects: 100% (20/20), done.
|
|
● remote: Compressing objects: 100% (12/12), done.
|
|
● Receiving objects: 100% (20/20), done.
|
|
● Resolving deltas: 100% (2/2), done.
|
|
● remote: Total 20 (delta 2), reused 20 (delta 2), pack-reused 0
|
|
|
|
|
|
|
|
● Настроим хранилище боба
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
● $ git config user.name 'Bob(KuzinVV)'
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
● $ git config user.email 'KuzinVV@mpei.ru'
|
|
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
$ git config user.name 'Bob(KuzinVV)'
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
$ git config user.email 'KuzinVV@mpei.ru'
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
$ git status
|
|
On branch master
|
|
Your branch is ahead of 'origin/master' by 2 commits.
|
|
(use "git push" to publish your local commits)
|
|
|
|
nothing to commit, working tree clean
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
$ git show HEAD
|
|
commit 2dae335f8a6f484195be4fcfdc4fe7e5a4c45970 (HEAD -> master)
|
|
Merge: 27292cf 883899e
|
|
Author: Bob (KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 15:24:02 2023 +0300
|
|
|
|
Merge branch 'master' of uit.mpei.ru:KuzinVV/cs-lab_02
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
$ git push
|
|
Enter passphrase for key '/c/Users/жесткий п/.ssh/id_rsa':
|
|
Enter passphrase for key '/c/Users/жесткий п/.ssh/id_rsa':
|
|
Enumerating objects: 9, done.
|
|
Counting objects: 100% (8/8), done.
|
|
Delta compression using up to 4 threads
|
|
Compressing objects: 100% (5/5), done.
|
|
Writing objects: 100% (5/5), 697 bytes | 348.00 KiB/s, done.
|
|
Total 5 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
remote: . Processing 1 references
|
|
remote: Processed 1 references in total
|
|
To uit.mpei.ru:KuzinVV/cs-lab_02.git
|
|
883899e..2dae335 master -> master
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
$ git fetch
|
|
Enter passphrase for key '/c/Users/жесткий п/.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 1), reused 0 (delta 0), pack-reused 0
|
|
Unpacking objects: 100% (3/3), 389 bytes | 1024 bytes/s, done.
|
|
From uit.mpei.ru:KuzinVV/cs-lab_02
|
|
2dae335..dda7d4c master -> origin/master
|
|
|
|
|
|
|
|
● Боб добавляет новый коммит, опережающий версию на сервере, и загружает его на GitHub.
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
$ git add project.cpp
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
|
|
$ git commit -m 'code: добавление вывода произведения двух чисел'
|
|
[main 49afd29] code: добавление вывода произведения двух чисел
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
$ git log --oneline --decorate --all --graph
|
|
* 49afd29 (HEAD -> main) code: добавление вывода произведения двух чисел
|
|
* a66d232 (origin/main, origin/HEAD) code: добавлен вывод разности двух чисел
|
|
* f06ff5f code: добавлен вывод суммы двух чисел
|
|
* c18ecb8 code: добавлен ввод двух чисел
|
|
* 75fb07c build: добавлен файл проекта
|
|
* e04836e code: заготовка программы
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
|
|
$ git push
|
|
Enter passphrase for key '/c/Users/Михаил/.ssh/id_rsa':
|
|
Enumerating objects: 7, done.
|
|
Counting objects: 100% (7/7), done.
|
|
Delta compression using up to 4 threads
|
|
Compressing objects: 100% (3/3), done.
|
|
Writing objects: 100% (4/4), 456 bytes | 456.00 KiB/s, done.
|
|
Total 4 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
|
|
To github.com:Kra1k/cs-lab¬_02.git
|
|
a66d232..49afd29 main -> main
|
|
|
|
|
|
|
|
● Обновляем версию программы у Алисы. Для этого загружаем загрузку изменений с помощью git fetch. А затем переносим ветку main на скачанную версию с помощью git pull (который, вообще говоря, все равно вызывает git fetch, поэтому его ручной вызов не обязателен).
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git fetch
|
|
remote: Enumerating objects: 9, done.
|
|
remote: Counting objects: 100% (8/8), done.
|
|
remote: Compressing objects: 100% (5/5), done.
|
|
remote: Total 5 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
Unpacking objects: 100% (5/5), 677 bytes | 2.00 KiB/s, done.
|
|
From uit.mpei.ru:KuzinVV/cs-lab_02
|
|
883899e..2dae335 master -> origin/master
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git log --oneline --decorate --all --graph
|
|
* 2dae335 (origin/master) Merge branch 'master' of uit.mpei.ru:KuzinVV/cs-lab_02
|
|
|\
|
|
| * 883899e git
|
|
* | 27292cf Вывод произведения
|
|
|/
|
|
* 12ceb72 (HEAD -> master) Вывод разности
|
|
* 58baa60 Вывод суммы
|
|
* 4bba4b5 Ввод двух чисел
|
|
* c07a302 build: добавлен файл проекта
|
|
* 034736f code: заготовка программы
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git pull --ff-only
|
|
Updating 12ceb72..2dae335
|
|
Fast-forward
|
|
.gitignore | 2 ++
|
|
main.cpp | 4 +++-
|
|
2 files changed, 5 insertions(+), 1 deletion(-)
|
|
create mode 100644 .gitignore
|
|
|
|
|
|
|
|
|
|
● Далее Алиса вносит новое изменение, а Боб его скачивает.
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git add main.cpp
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git commit -m "Вывод деления"
|
|
[master dda7d4c] Вывод деления
|
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git show HEAD
|
|
commit dda7d4c124d5aeee9fc89c15b5b0b88609496b22 (HEAD -> master)
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 15:36:38 2023 +0300
|
|
|
|
Вывод деления
|
|
|
|
diff --git a/main.cpp b/main.cpp
|
|
index 427ded3..d601ffe 100644
|
|
--- a/main.cpp
|
|
+++ b/main.cpp
|
|
@@ -9,7 +9,8 @@ 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';
|
|
return 0;
|
|
|
|
}
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git push
|
|
Enumerating objects: 5, done.
|
|
Counting objects: 100% (5/5), done.
|
|
Delta compression using up to 4 threads
|
|
Compressing objects: 100% (3/3), done.
|
|
Writing objects: 100% (3/3), 409 bytes | 409.00 KiB/s, done.
|
|
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
remote: . Processing 1 references
|
|
remote: Processed 1 references in total
|
|
To uit.mpei.ru:KuzinVV/cs-lab_02.git
|
|
2dae335..dda7d4c master -> master
|
|
|
|
|
|
● Теперь Алиса и Боб добавляют в программу печать максимума и минимума соответственно, а затем пробуют загрузить изменения на репозитарий на сервере.
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git add main.cpp
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git commit -m "Вывод максимума"
|
|
[master 372c9f3] Вывод максимума
|
|
1 file changed, 2 insertions(+)
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git show HEAD
|
|
commit 372c9f385676d09b94f9d6326fa093d60cf56d9b (HEAD -> master)
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 15:40:29 2023 +0300
|
|
|
|
Вывод максимума
|
|
|
|
diff --git a/main.cpp b/main.cpp
|
|
index d601ffe..d0f3794 100644
|
|
--- a/main.cpp
|
|
+++ b/main.cpp
|
|
@@ -11,6 +11,8 @@ int main()
|
|
<< "A - B = " << a - b << '\n'
|
|
<< "A * B = " << a * b << '\n'
|
|
<< "A / B = " << a / b << '\n';
|
|
+ if (a > b) cout << "max = " << a << '\n';
|
|
+ else cout << "max = " << b << '\n';
|
|
return 0;
|
|
|
|
}
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git push
|
|
Enumerating objects: 5, done.
|
|
Counting objects: 100% (5/5), done.
|
|
Delta compression using up to 4 threads
|
|
Compressing objects: 100% (3/3), done.
|
|
Writing objects: 100% (3/3), 427 bytes | 427.00 KiB/s, done.
|
|
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
remote: . Processing 1 references
|
|
remote: Processed 1 references in total
|
|
To uit.mpei.ru:KuzinVV/cs-lab_02.git
|
|
dda7d4c..372c9f3 master -> master
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
$ git show HEAD
|
|
commit 372c9f385676d09b94f9d6326fa093d60cf56d9b (HEAD -> master, origin/master)
|
|
Author: Alice(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 15:40:29 2023 +0300
|
|
|
|
Вывод максимума
|
|
|
|
diff --git a/main.cpp b/main.cpp
|
|
index d601ffe..d0f3794 100644
|
|
--- a/main.cpp
|
|
+++ b/main.cpp
|
|
@@ -11,6 +11,8 @@ int main()
|
|
<< "A - B = " << a - b << '\n'
|
|
<< "A * B = " << a * b << '\n'
|
|
<< "A / B = " << a / b << '\n';
|
|
+ if (a > b) cout << "max = " << a << '\n';
|
|
+ else cout << "max = " << b << '\n';
|
|
return 0;
|
|
}
|
|
|
|
|
|
|
|
● (боб)
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
$ git add main.cpp
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
$ git commit -m "Вывод минимума"
|
|
[master b746bb0] Вывод минимума
|
|
1 file changed, 2 insertions(+)
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
$ git show HEAD
|
|
commit b746bb090fcbac7e616c41e950b0fbaea78b8760 (HEAD -> master)
|
|
Author: Bob(KuzinVV) <KuzinVV@mpei.ru>
|
|
Date: Mon Mar 20 15:45:17 2023 +0300
|
|
|
|
Вывод минимума
|
|
|
|
diff --git a/main.cpp b/main.cpp
|
|
index d601ffe..45306da 100644
|
|
--- a/main.cpp
|
|
+++ b/main.cpp
|
|
@@ -11,6 +11,8 @@ int main()
|
|
<< "A - B = " << a - b << '\n'
|
|
<< "A * B = " << a * b << '\n'
|
|
<< "A / B = " << a / b << '\n';
|
|
+ if (a > b) cout << "min = " << b << '\n';
|
|
+ else cout << "min = " << a << '\n';
|
|
return 0;
|
|
|
|
}
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
$ git push
|
|
Enter passphrase for key '/c/Users/жесткий п/.ssh/id_rsa':
|
|
To uit.mpei.ru:KuzinVV/cs-lab_02.git
|
|
! [rejected] master -> master (non-fast-forward)
|
|
error: failed to push some refs to 'uit.mpei.ru:KuzinVV/cs-lab_02.git'
|
|
hint: Updates were rejected because the tip of your current branch is behind
|
|
hint: its remote counterpart. Integrate the remote changes (e.g.
|
|
hint: 'git pull ...') before pushing again.
|
|
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
|
|
(Однако загрузить на сервер изменения получается только у Алисы потому, что Боб затем пытается загрузить версию, основанную на более старом коммите, чем самый новый коммит в репозитарии GitHub.)
|
|
|
|
● Загрузим версию с сервера
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
● $ git fetch
|
|
● Enter passphrase for key '/c/Users/жесткий п/.ssh/id_rsa':
|
|
● Enter passphrase for key '/c/Users/жесткий п/.ssh/id_rsa':
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
● $ git show
|
|
● commit b746bb090fcbac7e616c41e950b0fbaea78b8760 (HEAD -> master)
|
|
● Author: Bob(KuzinVV) <KuzinVV@mpei.ru>
|
|
● Date: Mon Mar 20 15:45:17 2023 +0300
|
|
●
|
|
● Вывод минимума
|
|
●
|
|
● diff --git a/main.cpp b/main.cpp
|
|
● index d601ffe..45306da 100644
|
|
● --- a/main.cpp
|
|
● +++ b/main.cpp
|
|
● @@ -11,6 +11,8 @@ int main()
|
|
● << "A - B = " << a - b << '\n'
|
|
● << "A * B = " << a * b << '\n'
|
|
● << "A / B = " << a / b << '\n';
|
|
● + if (a > b) cout << "min = " << b << '\n';
|
|
● + else cout << "min = " << a << '\n';
|
|
● return 0;
|
|
●
|
|
● }
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
● $ git log --oneline --decorate --all –-graph
|
|
● fatal: ambiguous argument '–-graph': unknown revision or path not in the working tree.
|
|
● Use '--' to separate paths from revisions, like this:
|
|
● 'git <command> [<revision>...] -- [<file>...]'
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
● $ git log --oneline --decorate --all --graph
|
|
● * b746bb0 (HEAD -> master) Вывод минимума
|
|
● | * 372c9f3 (origin/master, origin/HEAD) Вывод максимума
|
|
● |/
|
|
● * dda7d4c Вывод деления
|
|
● * 2dae335 Merge branch 'master' of uit.mpei.ru:KuzinVV/cs-lab_02
|
|
● |\
|
|
● | * 883899e git
|
|
● * | 27292cf Вывод произведения
|
|
● |/
|
|
● * 12ceb72 Вывод разности
|
|
● * 58baa60 Вывод суммы
|
|
● * 4bba4b5 Ввод двух чисел
|
|
● * c07a302 build: добавлен файл проекта
|
|
● * 034736f code: заготовка программы
|
|
(Ветка main раздвоилась.)
|
|
● Объединим коммиты Боба и Алисы, поместив коммит Боба выше с помощью комманды git rebase.
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
● $ git rebase origin/master
|
|
● Auto-merging main.cpp
|
|
● CONFLICT (content): Merge conflict in main.cpp
|
|
● error: could not apply b746bb0... Вывод минимума
|
|
● hint: Resolve all conflicts manually, mark them as resolved with
|
|
● hint: "git add/rm <conflicted_files>", then run "git rebase --continue".
|
|
● hint: You can instead skip this commit: run "git rebase --skip".
|
|
● hint: To abort and get back to the state before "git rebase", run "git rebase --abort".
|
|
● Could not apply b746bb0... Вывод минимума
|
|
|
|
● Комманда завершается с ошибкой из-за конфликта в файле с кодом main.cpp. Производный файл от файла Алисы и Боба записывается в рабочую копию с помеченными метками конфликта. Убираем метки конфликта, и дорабатываем код так, чтобы программа компилировалась и работала. Затем загружаем изменения в индекс и продолжаем операцию git rebase, с помощью флага –continue.
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master|REBASE 1/1)
|
|
$ git add -u
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master|REBASE 1/1)
|
|
$ git status
|
|
interactive rebase in progress; onto 372c9f3
|
|
Last command done (1 command done):
|
|
pick b746bb0 Вывод минимума
|
|
No commands remaining.
|
|
You are currently rebasing branch 'master' on '372c9f3'.
|
|
(all conflicts fixed: run "git rebase --continue")
|
|
|
|
Changes to be committed:
|
|
(use "git restore --staged <file>..." to unstage)
|
|
modified: main.cpp
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master|REBASE 1/1)
|
|
$ git rebase --continue
|
|
[detached HEAD 9ebad82] Вывод минимума
|
|
1 file changed, 5 insertions(+)
|
|
Successfully rebased and updated refs/heads/master.
|
|
|
|
|
|
(Получили желаемый результат)
|
|
● Отправим изменения на сервер.
|
|
|
|
|
|
жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/bob/project (master)
|
|
$ git push
|
|
Enter passphrase for key '/c/Users/жесткий п/.ssh/id_rsa':
|
|
Enumerating objects: 5, done.
|
|
Counting objects: 100% (5/5), done.
|
|
Delta compression using up to 4 threads
|
|
Compressing objects: 100% (3/3), done.
|
|
Writing objects: 100% (3/3), 462 bytes | 462.00 KiB/s, done.
|
|
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
remote: . Processing 1 references
|
|
remote: Processed 1 references in total
|
|
To uit.mpei.ru:KuzinVV/cs-lab_02.git
|
|
372c9f3..9ebad82 master -> master
|
|
|
|
● В это время Алиса создаёт новую ветку (с помощью комманды git branch) для изменения типа переменных на вещественный. Начинает она с коммита, когда добавлена печать максимума.
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
● $ git pull
|
|
● Updating 372c9f3..9ebad82
|
|
● Fast-forward
|
|
● main.cpp | 5 +++++
|
|
● 1 file changed, 5 insertions(+)
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
● $ git fetch
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
● $ git checkout -b
|
|
● error: switch `b' requires a value
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
● $ git checkout double
|
|
● Switched to branch 'double'
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (double)
|
|
● $ git add -u
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (double)
|
|
● $ git commit -m "Перевод a, b в double"
|
|
● [double c7f3bdf] Перевод a, b в double
|
|
● 1 file changed, 6 insertions(+), 1 deletion(
|
|
|
|
|
|
|
|
|
|
● Затем переключается на ветку main. И синхронизирует её
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (double)
|
|
● $ git checkout master
|
|
● Switched to branch 'master'
|
|
● Your branch is up to date with 'origin/master'.
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
● $ git fetch
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
● $ git add -u
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
● $ git commit -m "Изменение типа данных"
|
|
● [master 5422fdc] Изменение типа данных
|
|
● 1 file changed, 1 insertion(+), 1 deletion(-)
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
● $ git fetch
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
● $ git pull --ff-only
|
|
● Already up to date.
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
● $ log --oneline --decorate --all –graph
|
|
● bash: log: command not found
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
● $ git log --oneline --decorate --all --graph
|
|
● * 5422fdc (HEAD -> master) Изменение типа данных
|
|
● * 9ebad82 (origin/master) Вывод минимума
|
|
● | * c7f3bdf (double) Перевод a, b в double
|
|
● |/
|
|
● * 372c9f3 Вывод максимума
|
|
● * dda7d4c Вывод деления
|
|
● * 2dae335 Merge branch 'master' of uit.mpei.ru:KuzinVV/cs-lab_02
|
|
● |\
|
|
● | * 883899e git
|
|
● * | 27292cf Вывод произведения
|
|
● |/
|
|
● * 12ceb72 Вывод разности
|
|
● * 58baa60 Вывод суммы
|
|
● * 4bba4b5 Ввод двух чисел
|
|
● * c07a302 build: добавлен файл проекта
|
|
● * 034736f code: заготовка программы
|
|
●
|
|
|
|
|
|
|
|
(Получаем одновременно две ветки)
|
|
● Объединяем их с помощью комманды git merge. Вносим последние изменения и загружаем на GitHub.
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
● $ git merge double
|
|
● Merge made by the 'ort' strategy.
|
|
●
|
|
● жесткий п@DESKTOP-UVLMK4V MINGW64 ~/Desktop/lab_02/alice/project (master)
|
|
● $ git log --oneline --decorate --all --graph
|
|
● * e00b9df (HEAD -> master) Merge branch 'double'
|
|
● |\
|
|
● | * c7f3bdf (double) Перевод a, b в double
|
|
● * | 5422fdc Изменение типа данных
|
|
● * | 9ebad82 (origin/master) Вывод минимума
|
|
● |/
|
|
● * 372c9f3 Вывод максимума
|
|
● * dda7d4c Вывод деления
|
|
● * 2dae335 Merge branch 'master' of uit.mpei.ru:KuzinVV/cs-lab_02
|
|
● |\
|
|
● | * 883899e git
|
|
● * | 27292cf Вывод произведения
|
|
● |/
|
|
● * 12ceb72 Вывод разности
|
|
● * 58baa60 Вывод суммы
|
|
● * 4bba4b5 Ввод двух чисел
|
|
● * c07a302 build: добавлен файл проек
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|