Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
Bob (BezhenarAN) ec2edf885b
text: README.txt
1 год назад
.gitignore git: игнорирование файлов 1 год назад
README.txt text: README.txt 1 год назад
main.cpp merge branch 'double' 1 год назад
project.cbp build: добавлен файл проекта 1 год назад

README.txt

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


Выполнил: Беженарь А.Н.
Группа: А-03-23
Проверил: Козлюк Д. А.

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

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

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2
$

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

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2
$ ls

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2


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

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2
$ mkdir alice

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2
$ mkdir bob

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2
$ cd alice

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice
$ mkdir project

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice
$ ls
project/

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice
$ cd project


4. Инициализировала репозитарий и проверила его наличие:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project
$ git init
Initialized empty Git repository in C:/Users/Дружок/Desktop/lab2/alice/project/.git/

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (master)
$ ls -A
.git/


Теперь возле проекта видна подпись (master). Git создал ветку (master), что видно в приглашении терминала. По заданию я должна поменять имя ветки, но у меня не высветилось подсказки. Поэтому я переименую ветку после первого коммита.

5. Настроила репозитарий Алисы:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (master)
$ git config user.name 'Alice (BezhenarAN)'

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (master)
$ git config user.email 'BezhenarAN@mpei.ru'

6. Запустила CodeBlocks и создала проект в репозитарии Алисы.

7.Проверила статус рабочей копии:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/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)


1 строка "on branch master" означает что в данный момент времени мы находимся на ветке мастер.
2 строка "No commits yet" означает, что еще не существует коммитов.
3 строка "untracked files: (...)" показывает какие файлы не находятся под контролем версий/коммитов и консоль подсказывает команду для добавления файлов, которые должны быть закоммитены.
Дальше идет перечисление файлов которые никак не отслеживаются гитом.
в моем случае:
bin/
main.cpp
obj/
project.cbp
следняя строчка снова показывает что никаких коммитов не было добавлено, но присутствуют неотслеживаемые файлы( снова подсказка команды для добавления отслеживания файла.)

8. Начну отслеживать файл main.cpp:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (master)
$ git add main.cpp

9. Проверю статус репозитория снова:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/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)
bin/
obj/
project.cbp


Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (master)
$

После повторной проверки статуса репозитория, мной было обнаружено несколько изменений:
1) Во-первых, файл main.cpp добавился к отслеживаемым файлам.
2) Во-вторых, файл main.cpp исчез из списка неотслеживаемых файлов.

10. Выполнила коммит:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (master)
$ git commit -m 'code:заготовка программы'
[master (root-commit) e8ed8e0] code:заготовка программы
1 file changed, 9 insertions(+)
create mode 100644 main.cpp

11. Переименую ветку, так как я сделала первый коммит:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (master)
$ git branch -m main


12. Начала отслеживать файл roject.cbp и сделала коммит с ним:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git add project.cbp
warning: in the working copy of 'project.cbp', LF will be replaced by CRLF the next time Git touches it

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -m 'build: добавлен файл проекта'
[main 62876b8] build: добавлен файл проекта
1 file changed, 40 insertions(+)
create mode 100644 project.cbp

13.Проверила статус репозитария снова:

из изменений только пропажа файла project из списка неотслеживаемых файлов.

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git status
On branch main
Untracked files:
(use "git add <file>..." to include in what will be committed)
bin/
obj/

nothing added to commit but untracked files present (use "git add" to track)


14. Изменила тело функции main() на ввод чисел и проверила статус репозитория:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git status
On branch main
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")


После проверки статуса репозитория обнаружила новые строки, которые означают то, что файл main.cpp был изменен, а также были предложены 2 подсказки (сделать коммит и отмена изменений в директории).

15. Попробовала 1 способ коммита изменения:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git add main.cpp

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -m 'code: изменение телф функции'
[main 5a39502] code: изменение телф функции
1 file changed, 3 insertions(+), 2 deletions(-)


16. Добавила в программу вывод суммы a и b и попробовала 2 способ коммита изменения:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git add -u

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -m 'code: добавлен вывод суммы'
[main fd315d0] code: добавлен вывод суммы
1 file changed, 1 insertion(+)


17. Добавила вывод разности чисел и попробовала 3 способ коммита:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -a -m 'code: добавлен вывод разности'
[main f00ed07] code: добавлен вывод разности
1 file changed, 2 insertions(+), 1 deletion(-)

18. Создала пустой файл в CodeBlocks и занесла в список файлы для игнорирования. Добавила .gitignore в список отслеживаемых файлов и закоммитила изменения:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git status
On branch main
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-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git add .gitignore

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -m 'git: игнорирование файлов'
[main f5259e5] git: игнорирование файлов
1 file changed, 4 insertions(+)
create mode 100644 .gitignore

19. Посмотрела историю коммитов:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log --oneline --decorate --all --graph
* f5259e5 (HEAD -> main) git: игнорирование файлов
* f00ed07 code: добавлен вывод разности
* fd315d0 code: добавлен вывод суммы
* 5a39502 code: изменение телф функции
* 62876b8 build: добавлен файл проекта
* e8ed8e0 code:заготовка программы

20. пробую варианты просмотре коммитов:

1 вариант:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log
commit f5259e5aa1e97fc46830c3604da1415ffe4395e9 (HEAD -> main)
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:40:05 2024 +0300

git: игнорирование файлов

commit f00ed07d26566b3bc6d400b9c453fd685176812f
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:29:26 2024 +0300

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

commit fd315d04c5977a9622ba8152b8a7edd96c527383
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:27:22 2024 +0300

code: добавлен вывод суммы

commit 5a39502eb53f0cee068fe292dab991147f264e5a
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:24:57 2024 +0300

code: изменение телф функции

commit 62876b82bcb8b6d5dc7f345779028682848086af
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:19:08 2024 +0300

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

commit e8ed8e0ef0990f4777c90cfd4513941847ecc211
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:15:53 2024 +0300

code:заготовка программы
(END)

2 вариант:
Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log --oneline --decorate
f5259e5 (HEAD -> main) git: игнорирование файлов
f00ed07 code: добавлен вывод разности
fd315d0 code: добавлен вывод суммы
5a39502 code: изменение телф функции
62876b8 build: добавлен файл проекта
e8ed8e0 code:заготовка программы

3 вариант: (был опробован в пункте 19)

21. Описание git log --stat:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log --stat
commit f5259e5aa1e97fc46830c3604da1415ffe4395e9 (HEAD -> main)
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:40:05 2024 +0300

git: игнорирование файлов

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

Во-первых показан полный хеш коммита.
Во-вторых показан автор коммита (имя и почта).
В-третьих показана дата создания коммита.
В-четвертых имя коммита.
В-пятых перечисление изменений.

22. Профильтрую коммиты:
по main.cpp:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log -- main.cpp
commit f00ed07d26566b3bc6d400b9c453fd685176812f
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:29:26 2024 +0300

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

commit fd315d04c5977a9622ba8152b8a7edd96c527383
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:27:22 2024 +0300

code: добавлен вывод суммы

commit 5a39502eb53f0cee068fe292dab991147f264e5a
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:24:57 2024 +0300

code: изменение телф функции

commit e8ed8e0ef0990f4777c90cfd4513941847ecc211
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:15:53 2024 +0300

code:заготовка программы

по code:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log --grep 'code:'
commit f00ed07d26566b3bc6d400b9c453fd685176812f
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:29:26 2024 +0300

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

commit fd315d04c5977a9622ba8152b8a7edd96c527383
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:27:22 2024 +0300

code: добавлен вывод суммы

commit 5a39502eb53f0cee068fe292dab991147f264e5a
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:24:57 2024 +0300

code: изменение телф функции

commit e8ed8e0ef0990f4777c90cfd4513941847ecc211
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:15:53 2024 +0300

code:заготовка программы
(END)

23. Фильтр по build:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log --grep "build:"
commit 62876b82bcb8b6d5dc7f345779028682848086af
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:19:08 2024 +0300

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

По project.cbp:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log -- project.cbp
commit 62876b82bcb8b6d5dc7f345779028682848086af
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:19:08 2024 +0300

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

24. Просмотрела последний комиит 3 разными способами и просмотрела предпоследний коммит:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git show HEAD
commit f5259e5aa1e97fc46830c3604da1415ffe4395e9 (HEAD -> main)
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:40:05 2024 +0300

git: игнорирование файлов

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

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git show main
commit f5259e5aa1e97fc46830c3604da1415ffe4395e9 (HEAD -> main)
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:40:05 2024 +0300

git: игнорирование файлов

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

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git show f5259e5
commit f5259e5aa1e97fc46830c3604da1415ffe4395e9 (HEAD -> main)
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:40:05 2024 +0300

git: игнорирование файлов

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




Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git show HEAD~1
commit f00ed07d26566b3bc6d400b9c453fd685176812f
Author: Alice (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Mon Mar 25 20:29:26 2024 +0300

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

diff --git a/main.cpp b/main.cpp
index bb0a613..e1640a2 100644
--- a/main.cpp
+++ b/main.cpp
@@ -7,5 +7,6 @@ int main()
cout << "Enter A and B: ";
int a, b;
cin >> a >> b;
-cout << "A + B = " << a + b << '\n';
+cout << "A + B = " << a + b << '\n'
+ << "A - B = " << a - b << '\n';
}

25. Внесла изменения в main.cpp, но не стала делать коммит. Посмотрела изменения в рабочей версии:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git diff
diff --git a/main.cpp b/main.cpp
index e1640a2..dd09f61 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';
}


1 строка:
В этой строке отображаются входные данные сравнения. Для сравнения переданы файлы a/main.cpp и b/main.cpp
2 строка:
В этой строке отображаются внутренние метаданные Git. Номера в этих выходных данных соответствуют хеш-идентификаторам версий объектов Git.
3 строка:
Маркеры изменений. Эти строки представляют собой легенду обозначений для каждого источника входных данных сравнения.
4 строка:
Первая строка — это заголовок фрагмента. К началу каждого фрагмента добавляется заголовок, окруженный символами @@. Заголовок кратко описывает изменения в файле.
В нашем случае заголовка было извлечено 5 строк начиная со строки 8. Кроме того, после строки 8 было добавлено 6 строк.
Остальное содержимое фрагмента сравнения — это недавние изменения. Каждой измененной строке предшествует символ + или -, указывающий на источник входных данных сравнения. + для b/main.cpp и - для a/main.cpp.

26. Посмотрим изменения пред последнего и пред-предпоследнего коммита:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git diff HEAD~3 HEAD~2
diff --git a/main.cpp b/main.cpp
index bcb9c2e..bb0a613 100644
--- a/main.cpp
+++ b/main.cpp
@@ -7,4 +7,5 @@ int main()
cout << "Enter A and B: ";
int a, b;
cin >> a >> b;
+cout << "A + B = " << a + b << '\n';
}

27. Просмотрела разницу между 1 коммитом и коммитом разности. Команда показала различия main.cpp, но т.к. файл пректа не находился под контролем версий мы не смогли их сравнить, но он показал каким стайл файл проекта:


Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git diff HEAD~1 HEAD~5
diff --git a/main.cpp b/main.cpp
index e1640a2..b4392ec 100644
--- a/main.cpp
+++ b/main.cpp
@@ -4,9 +4,6 @@ using namespace std;

int main()
{
- cout << "Enter A and B: ";
-int a, b;
-cin >> a >> b;
-cout << "A + B = " << a + b << '\n'
- << "A - B = " << a - b << '\n';
+ cout << "Hello world!" << endl;
+ return 0;
}
diff --git a/project.cbp b/project.cbp
deleted file mode 100644
index 99bb702..0000000
--- a/project.cbp
+++ /dev/null
@@ -1,40 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
-<CodeBlocks_project_file>
- <FileVersion major="1" minor="6" />
- <Project>
- <Option title="project" />
- <Option pch_mode="2" />
- <Option compiler="gcc" />
- <Build>
- <Target title="Debug">
- <Option output="bin/Debug/project" prefix_auto="1" extension_auto="1" />
- <Option object_output="obj/Debug/" />
- <Option type="1" />
- <Option compiler="gcc" />
- <Compiler>
- <Add option="-g" />
- </Compiler>
- </Target>
- <Target title="Release">
- <Option output="bin/Release/project" prefix_auto="1" extension_auto="1" />
- <Option object_output="obj/Release/" />
- <Option type="1" />
- <Option compiler="gcc" />
- <Compiler>
- <Add option="-O2" />
- </Compiler>
- <Linker>
- <Add option="-s" />
- </Linker>
- </Target>
- </Build>
- <Compiler>
- <Add option="-Wall" />
- <Add option="-fexceptions" />
- </Compiler>
- <Unit filename="main.cpp" />
- <Extensions>
- <lib_finder disable_auto="1" />
- </Extensions>
- </Project>
-</CodeBlocks_project_file>
(END)


28. Коммит произведения:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git add main.cpp

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -m "code: вывод произведения"
[main a7d0c7a] code: вывод произведения
1 file changed, 2 insertions(+), 1 deletion(-)

29. добавлю комментарий в программу и откачу изменения 2 способами:

1)
Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -a -m 'code: комментарий'
warning: in the working copy of 'project.cbp', LF will be replaced by CRLF the next time Git touches it
[main 7aebf5b] code: комментарий
2 files changed, 2 insertions(+), 1 deletion(-)

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git reset --hard HEAD~1
HEAD is now at a7d0c7a code: вывод произведения

2) Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git checkout HEAD -- main.cpp

30. Зарегистрировалась на сервере и создала ключи:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ ssh-keygen
Generating public/private ed25519 key pair.
Enter file in which to save the key (/c/Users/Дружок/.ssh/id_ed25519):
Created directory '/c/Users/\320\224\321\200\321\203\320\266\320\276\320\272/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/Дружок/.ssh/id_ed25519
Your public key has been saved in /c/Users/Дружок/.ssh/id_ed25519.pub
The key fingerprint is:
SHA256:JcQ1WdKZIqZsXnwefudFvYQVTrute8YaJmZfzooKN4o Дружок@DESKTOP-PGADE7R
The key's randomart image is:
+--[ED25519 256]--+
| ...++.o o.|
| .+ oo+ o..|
| . +.... oo.|
| + ooo . .=|
| o .S+ . .oo|
| . o . .o.|
| . o.+o+o.|
| . + + =.*+|
| E . ... ==o|
+----[SHA256]-----+

31. запустила агента и дала доступ к моим "ключам":

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ eval $(ssh-agent -s)
Agent pid 1862

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ ssh-add
Enter passphrase for /c/Users/Дружок/.ssh/id_ed25519:
Identity added: /c/Users/Дружок/.ssh/id_ed25519 (Дружок@DESKTOP-PGADE7R)

32. Попыталась подключиться к репозиторию по SSH ( не вышло), поэтому подключилась через http:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git remote add origin git@uit.mpei.ru:BezhenarAN/cs-lab02.git

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git push -u origin main

ssh: connect to host uit.mpei.ru port 22: Connection timed out
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git remote set-url origin http://uit.mpei.ru/git/BezhenarAN/cs-lab02.git

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git push -u origin main
Enumerating objects: 18, done.
Counting objects: 100% (18/18), done.
Delta compression using up to 20 threads
Compressing objects: 100% (16/16), done.
Writing objects: 100% (18/18), 2.35 KiB | 2.35 MiB/s, done.
Total 18 (delta 2), reused 0 (delta 0), pack-reused 0 (from 0)
remote: . Processing 1 references
remote: Processed 1 references in total
To http://uit.mpei.ru/git/BezhenarAN/cs-lab02.git
* [new branch] main -> main
branch 'main' set up to track 'origin/main'.


33. Открыла git bush в папке боба( на его "железе") и скопировала проект, переходя в каталог проекта:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob
$ git clone http://uit.mpei.ru/git/BezhenarAN/cs-lab02.git project
Cloning into 'project'...
remote: Enumerating objects: 18, done.
remote: Counting objects: 100% (18/18), done.
remote: Compressing objects: 100% (16/16), done.
remote: Total 18 (delta 2), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (18/18), done.
Resolving deltas: 100% (2/2), done.

34. Отредактировала профиль боба:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git config user.name 'Bob (BezhenarAN)'

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git config user.email 'BezhenarAN@mpei.ru'

35. Добавила вывод произведения и сделала коммит от лица Боба:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git commit -a -m 'code: вывод произведения'
[main 95dfddc] code: вывод произведения
1 file changed, 2 insertions(+), 1 deletion(-)


Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git log
commit 95dfddcaf13558614574c48944f6d9b55e56324e (HEAD -> main, origin/main, origin/HEAD)
Author: Bob (BezhenarAN) <BezhenarAN@mpei.ru>
Date: Tue Mar 26 20:13:51 2024 +0300

code: вывод произведения



36. Отправила на сервер коммит:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 20 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 409 bytes | 409.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0)
remote: . Processing 1 references
remote: Processed 1 references in total
To http://uit.mpei.ru/git/BezhenarAN/cs-lab02.git
f5259e5..95dfddc main -> main

37. От лица Алисы выполнила загрузку изменений:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git fetch
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), 389 bytes | 43.00 KiB/s, done.
From http://uit.mpei.ru/git/BezhenarAN/cs-lab02
f5259e5..95dfddc main -> origin/main



изменений не произошло в рабочей версии

38. Посмотрела граф коммитов:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log --oneline --decorate --all --graph
* 95dfddc (origin/main) code: вывод произведения
* f5259e5 (HEAD -> main) git: игнорирование файлов
* f00ed07 code: добавлен вывод разности
* fd315d0 code: добавлен вывод суммы
* 5a39502 code: изменение телф функции
* 62876b8 build: добавлен файл проекта
* e8ed8e0 code:заготовка программы


увидела отставание рабочей версии от версии на сервере

39. Продвинула ветку main к версии на сервере. Теперь она соответствует версии Боба.

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git pull --ff-only
Updating f5259e5..95dfddc
Fast-forward
main.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)


40. Тоже самое(35-39), но наоборот(от лица Алисы коммит и от лица Боба загрузка изменений):

от Алисы:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -a -m 'code: вывод деления'
[main f6431eb] code: вывод деления
1 file changed, 2 insertions(+), 1 deletion(-)

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 20 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 404 bytes | 404.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0)
remote: . Processing 1 references
remote: Processed 1 references in total
To http://uit.mpei.ru/git/BezhenarAN/cs-lab02.git
95dfddc..f6431eb main -> main



от Боба:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git fetch
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), 384 bytes | 64.00 KiB/s, done.
From http://uit.mpei.ru/git/BezhenarAN/cs-lab02
95dfddc..f6431eb main -> origin/main

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git log --oneline --decorate --all --graph
* f6431eb (origin/main, origin/HEAD) code: вывод деления
* 95dfddc (HEAD -> main) code: вывод произведения
* f5259e5 git: игнорирование файлов
* f00ed07 code: добавлен вывод разности
* fd315d0 code: добавлен вывод суммы
* 5a39502 code: изменение телф функции
* 62876b8 build: добавлен файл проекта
* e8ed8e0 code:заготовка программы

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git pull --ff-only
Updating 95dfddc..f6431eb
Fast-forward
main.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)



41. Написала вывод максимума от лица Алисы, сделала коммит и отправила на сервер:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git commit -a -m 'code: вывод максимального числа'
[main 1c7b7ee] code: вывод максимального числа
1 file changed, 6 insertions(+)

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 20 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 451 bytes | 451.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0)
remote: . Processing 1 references
remote: Processed 1 references in total
To http://uit.mpei.ru/git/BezhenarAN/cs-lab02.git
f6431eb..1c7b7ee main -> main

42. Написала вывод минимума от лица Боба и попыталась закоммитить:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git commit -a -m 'code: вывод минимального числа'
[main 1ea8dde] code: вывод минимального числа
1 file changed, 5 insertions(+)

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git push
To http://uit.mpei.ru/git/BezhenarAN/cs-lab02.git
! [rejected] main -> main (fetch first)
error: failed to push some refs to 'http://uit.mpei.ru/git/BezhenarAN/cs-lab02.git'
hint: Updates were rejected because the remote contains work that you do not
hint: have locally. This is usually caused by another repository pushing to
hint: the same ref. If you want to integrate the remote changes, use
hint: 'git pull' before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

вылезла подсказка с загрузкой коммитов из удаленного репозитория

43. Загрузила от Боба с сервера коммиты:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git pull
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), 431 bytes | 23.00 KiB/s, done.
From http://uit.mpei.ru/git/BezhenarAN/cs-lab02
f6431eb..1c7b7ee main -> origin/main
Auto-merging main.cpp
CONFLICT (content): Merge conflict in main.cpp
Automatic merge failed; fix conflicts and then commit the result.


44. Посмотрела дерево коммитов:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main|MERGING)
$ git log --oneline --decorate --all --graph
* 1ea8dde (HEAD -> main) code: вывод минимального числа
| * 1c7b7ee (origin/main, origin/HEAD) code: вывод максимального числа
|/
* f6431eb code: вывод деления
* 95dfddc code: вывод произведения
* f5259e5 git: игнорирование файлов
* f00ed07 code: добавлен вывод разности
* fd315d0 code: добавлен вывод суммы
* 5a39502 code: изменение телф функции
* 62876b8 build: добавлен файл проекта
* e8ed8e0 code:заготовка программы


45. Попыталась переместить коммит Боба поверх коммита Алисы. Получила ошибку.

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main|MERGING)
$ git rebase origin/main
main.cpp: needs merge
error: cannot rebase: You have unstaged changes.
error: additionally, your index contains uncommitted changes.
error: Please commit or stash them.


46. Проверила статус репозитория:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main|MERGING)
$ git status
On branch main
Your branch and 'origin/main' have diverged,
and have 1 and 1 different commits each, respectively.
(use "git pull" if you want to integrate the remote branch with yours)

You have unmerged paths.
(fix conflicts and run "git commit")
(use "git merge --abort" to abort the merge)

Unmerged paths:
(use "git add <file>..." to mark resolution)
both modified: main.cpp

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


гит предупреждает, что произошло расхождение моей ветки и ветки на сервере( различные коммиты) и предлагает пути решения проблемы.

47. Сделала изменения в коде и продолжила rebase команду. Убедилась в правильном ходе истории и закоммитила на сервер (еще изменила название коммита).

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main|REBASE 1/1)
$ git add main.cpp

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main|REBASE 1/1)
$ git rebase origin/main
fatal: It seems that there is already a rebase-merge directory, and
I wonder if you are in the middle of another rebase. If that is the
case, please try
git rebase (--continue | --abort | --skip)
If that is not the case, please
rm -fr ".git/rebase-merge"
and run me again. I am stopping in case you still have something
valuable there.


Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main|REBASE 1/1)
$ git rebase --continue
[detached HEAD ec7d9a1] CODE: ВЫВОД МИНИМАЛЬНОГО ЧИСЛА
1 file changed, 2 insertions(+), 1 deletion(-)
Successfully rebased and updated refs/heads/main.

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git log --oneline
ec7d9a1 (HEAD -> main) CODE: ВЫВОД МИНИМАЛЬНОГО ЧИСЛА
1c7b7ee (origin/main, origin/HEAD) code: вывод максимального числа
f6431eb code: вывод деления
95dfddc code: вывод произведения
f5259e5 git: игнорирование файлов
f00ed07 code: добавлен вывод разности
fd315d0 code: добавлен вывод суммы
5a39502 code: изменение телф функции
62876b8 build: добавлен файл проекта
e8ed8e0 code:заготовка программы

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ i
bash: i: command not found

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git commit --amend -m 'code: вывод максимального и минимального чисел'
[main 3fc97c8] code: вывод максимального и минимального чисел
Date: Tue Mar 26 20:28:54 2024 +0300
1 file changed, 2 insertions(+), 1 deletion(-)

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git log --oneline
3fc97c8 (HEAD -> main) code: вывод максимального и минимального чисел
1c7b7ee (origin/main, origin/HEAD) code: вывод максимального числа
f6431eb code: вывод деления
95dfddc code: вывод произведения
f5259e5 git: игнорирование файлов
f00ed07 code: добавлен вывод разности
fd315d0 code: добавлен вывод суммы
5a39502 code: изменение телф функции
62876b8 build: добавлен файл проекта
e8ed8e0 code:заготовка программы

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/bob/project (main)
$ git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 20 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 440 bytes | 440.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0)
remote: . Processing 1 references
remote: Processed 1 references in total
To http://uit.mpei.ru/git/BezhenarAN/cs-lab02.git
1c7b7ee..3fc97c8 main -> main

48. С компьютера Алисы создала ветку double и переключилась на неё:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git branch double

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git checkout double
Switched to branch 'double'

49. Поменяла тип данных на тип double и сделала коммит. После переключилась на ветку main, чтобы загрузить изменения на компьютер Алисы:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (double)
$ git commit -a -m 'code: тип данных double'
[double 427b5c7] code: тип данных double
1 file changed, 1 insertion(+), 1 deletion(-)

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (double)
$ git checkout main
Switched to branch 'main'
Your branch is up to date with 'origin/main'.

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git fetch
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (3/3), done.
remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), 420 bytes | 21.00 KiB/s, done.
From http://uit.mpei.ru/git/BezhenarAN/cs-lab02
1c7b7ee..3fc97c8 main -> origin/main

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git pull
Updating 1c7b7ee..3fc97c8
Fast-forward
main.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

50. Просмотрела историю всех веток:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log --oneline --decorate --all --graph
* 427b5c7 (double) code: тип данных double
| * 3fc97c8 (HEAD -> main, origin/main) code: вывод максимального и минимального чисел
|/
* 1c7b7ee code: вывод максимального числа
* f6431eb code: вывод деления
* 95dfddc code: вывод произведения
* f5259e5 git: игнорирование файлов
* f00ed07 code: добавлен вывод разности
* fd315d0 code: добавлен вывод суммы
* 5a39502 code: изменение телф функции
* 62876b8 build: добавлен файл проекта
* e8ed8e0 code:заготовка программы



Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git checkout double
Switched to branch 'double'

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (double)
$ git log --oneline --decorate --all --graph
* 427b5c7 (HEAD -> double) code: тип данных double
| * 3fc97c8 (origin/main, main) code: вывод максимального и минимального чисел
|/
* 1c7b7ee code: вывод максимального числа
* f6431eb code: вывод деления
* 95dfddc code: вывод произведения
* f5259e5 git: игнорирование файлов
* f00ed07 code: добавлен вывод разности
* fd315d0 code: добавлен вывод суммы
* 5a39502 code: изменение телф функции
* 62876b8 build: добавлен файл проекта
* e8ed8e0 code:заготовка программы

51. Снова перешла на ветку main и слила 2 ветки в одну:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (double)
$ git checkout main
Switched to branch 'main'
Your branch is up to date with 'origin/main'.

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git merge double
Auto-merging main.cpp
Merge made by the 'ort' strategy.
main.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

52. Отправила изменения на сервер:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git push
Enumerating objects: 10, done.
Counting objects: 100% (10/10), done.
Delta compression using up to 20 threads
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 733 bytes | 733.00 KiB/s, done.
Total 6 (delta 2), reused 0 (delta 0), pack-reused 0 (from 0)
remote: . Processing 1 references
remote: Processed 1 references in total
To http://uit.mpei.ru/git/BezhenarAN/cs-lab02.git
3fc97c8..2445cbb main -> main

53. Истории веток:

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git log --oneline --decorate --all --graph
* 2445cbb (HEAD -> main, origin/main) merge branch 'double' merge
|\
| * 427b5c7 (double) code: тип данных double
* | 3fc97c8 code: вывод максимального и минимального чисел
|/
* 1c7b7ee code: вывод максимального числа
* f6431eb code: вывод деления
* 95dfddc code: вывод произведения
* f5259e5 git: игнорирование файлов
* f00ed07 code: добавлен вывод разности
* fd315d0 code: добавлен вывод суммы
* 5a39502 code: изменение телф функции
* 62876b8 build: добавлен файл проекта
* e8ed8e0 code:заготовка программы

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (main)
$ git checkout double
Switched to branch 'double'

Дружок@DESKTOP-PGADE7R MINGW64 ~/Desktop/lab2/alice/project (double)
$ git log --oneline --decorate --all --graph
* 2445cbb (origin/main, main) merge branch 'double' merge
|\
| * 427b5c7 (HEAD -> double) code: тип данных double
* | 3fc97c8 code: вывод максимального и минимального чисел
|/
* 1c7b7ee code: вывод максимального числа
* f6431eb code: вывод деления
* 95dfddc code: вывод произведения
* f5259e5 git: игнорирование файлов
* f00ed07 code: добавлен вывод разности
* fd315d0 code: добавлен вывод суммы
* 5a39502 code: изменение телф функции
* 62876b8 build: добавлен файл проекта
* e8ed8e0 code:заготовка программы