Alice (NemykinNO) 2 лет назад
Родитель 2354514667
Сommit 1bd3bfbb07

@ -0,0 +1,476 @@
Отчет по лабораторной работе № 2 "Система контроля версий Git"
Выполнил: Немыкин Никита Олегович
Группа: А-02-22
Проверил:
Примечание: работа выполнялась на Windows.
1. Создал на рабочем столе каталог lab02 и запустил в нем Git Bash, приглашение:
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2
2. Просмотрел файлы в рабочем каталоге можно командой "ls" --- пусто:
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2
$ ls
3. Создал каталоги Алисы и Боба, создал каталог "project",
изучил команду "cd" в процессе:
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2
$ mkdir alice
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2
$ mkdir bob
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2
$ cd alice
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice
$ mkdir project
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice
$ cd ..
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2
$ cd alice
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice
$ cd project
4. Инициализировал репозитарий:
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project
$ git init
Initialized empty Git repository in C:/Users/nn110/OneDrive/Рабочий стол/laba2/alice/project/.git/
5. Поменял имя ветки на main
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (master)
$ git branch -m main
Настроил репозитарий Алисы:
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git config user.name 'Alice (NemykinNO)'
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git config user.email 'NemykinNO@mpei.ru
6.Воспользовался командой git status, чтобы просмотреть состояние рабочей копии
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git status
On branch main // находимся на ветке main
No commits yet // комиты отсутствуют
Untracked files: // неотслеживаемые файлы
(use "git add <file>..." to include in what will be committed)
.vs/
laba02.cpp
laba02.sln
laba02.vcxproj
laba02.vcxproj.filters
laba02.vcxproj.user
nothing added to commit but untracked files present (use "git add" to track)// ничего не добавлено в комит, но представлены неотслеживаемые файлы
7.Добавил файл laba02.cpp в индекс название вместо project.cpp
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git add laba02.cpp
8.Выполнил коммит с файлом laba02.cpp
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git commit -m 'code: заготовка программы'
[main (root-commit) 91c7889] code: заготовка программы
1 file changed, 20 insertions(+)
create mode 100644 laba02.cpp
9. Добавил файл laba02.sln в индекс
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git add laba02.sln
10.Выполнил коммит с файлом laba02.sln
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git commit -m 'bild: добавлен файл проекта'
[main 7542915] bild: добавлен файл проекта
1 file changed, 31 insertions(+)
create mode 100644 laba02.sln
11.Закоммител изменения в файле
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git commit -a -m "добавление разницы"
[main 61af41c] добавление разницы
1 file changed, 6 insertions(+), 11 deletions(-)
12. Создал файл gitignore, внес его в индекс и закоммитил
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git commit -a -m "git создание .gitignore"
[main 3b38ec5] git создание .gitignore
1 file changed, 363 insertions(+)
create mode 100644 .gitignore
13. Воспользовался командой для показа журнала репозитария
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git log
commit 3b38ec5f3fb7ea95c21646e2b57ff8edda2538da (HEAD -> main)
Author: Alice (NemykinNO) <NemykinNO@mpei.ru>
Date: Mon Mar 13 14:52:26 2023 +0300
git создание .gitignore
commit 61af41c01b549c1bb5849d81fd467c5df3b466ba
Author: Alice (NemykinNO) <NemykinNO@mpei.ru>
Date: Mon Mar 13 14:35:10 2023 +0300
добавление разницы
commit 7542915a8a097edce7702fc9ef60f75ee7ec4e96
Author: Alice (NemykinNO) <NemykinNO@mpei.ru>
Date: Mon Mar 13 14:26:03 2023 +0300
bild: добавлен файл проекта
commit 91c7889988753e37de1456c34133027582a64b69
Author: Alice (NemykinNO) <NemykinNO@mpei.ru>
Date: Mon Mar 13 14:20:57 2023 +0300
code: заготовка программы
14.Просмотрел коммиты компактно
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git log --oneline --decorate --all --graph
* 3b38ec5 (HEAD -> main) git создание .gitignore
* 61af41c добавление разницы
* 7542915 bild: добавлен файл проекта
* 91c7889 code: заготовка программы
15.Просмотрел коммиты связаные с laba02.cpp
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git log -- laba02.cpp
commit 61af41c01b549c1bb5849d81fd467c5df3b466ba
Author: Alice (NemykinNO) <NemykinNO@mpei.ru>
Date: Mon Mar 13 14:35:10 2023 +0300
добавление разницы
commit 91c7889988753e37de1456c34133027582a64b69
Author: Alice (NemykinNO) <NemykinNO@mpei.ru>
Date: Mon Mar 13 14:20:57 2023 +0300
code: заготовка программы
16. Посмотрел коммит с build у меня была опечатка, поэтому bild
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git log --grep "bild:"
commit 7542915a8a097edce7702fc9ef60f75ee7ec4e96
Author: Alice (NemykinNO) <NemykinNO@mpei.ru>
Date: Mon Mar 13 14:26:03 2023 +0300
bild: добавлен файл проекта
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git log -- laba02.sln
commit 7542915a8a097edce7702fc9ef60f75ee7ec4e96
Author: Alice (NemykinNO) <NemykinNO@mpei.ru>
Date: Mon Mar 13 14:26:03 2023 +0300
bild: добавлен файл проекта
17. Посмотрел предпоследний коммит
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git show HEAD~1
commit 61af41c01b549c1bb5849d81fd467c5df3b466ba
Author: Alice (NemykinNO) <NemykinNO@mpei.ru>
Date: Mon Mar 13 14:35:10 2023 +0300
добавление разницы
diff --git a/laba02.cpp b/laba02.cpp
index 2739469..0af3468 100644
--- a/laba02.cpp
+++ b/laba02.cpp
@@ -2,19 +2,14 @@
//
#include <iostream>
-
+using namespace std;
int main()
{
- std::cout << "Hello World!\n";
+ cout << "Enter A and B: ";
+ int a, b;
+ cin >> a >> b;
+ cout << "A + B = " << a + b << '\n'
+ << "A - B = " << a - b << '\n';
}
18. Посмотрел изменения в laba02.cpp
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git diff
diff --git a/laba02.cpp b/laba02.cpp
index 0af3468..5812c48 100644
--- a/laba02.cpp
+++ b/laba02.cpp
@@ -9,7 +9,8 @@ int main()
int a, b;
cin >> a >> b;
cout << "A + B = " << a + b << '\n'
- << "A - B = " << a - b << '\n';
+ << "A - B = " << a - b << '\n';
+ cout << "A * B = " << a * b << '\n';
}
19. Посмотрел изменения самого первого коммита.
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git diff HEAD~1 HEAD~3
diff --git a/laba02.cpp b/laba02.cpp
index 0af3468..2739469 100644
--- a/laba02.cpp
+++ b/laba02.cpp
@@ -2,14 +2,19 @@
//
#include <iostream>
-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';
+ std::cout << "Hello World!\n";
20. откатился к предыдущему коммиту
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git reset --hard HEAD~1
HEAD is now at 61af41c добавление разницы
21. Убрал изменение в laba02.cpp
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git checkout HEAD -- laba02.cpp
22.Создал пару ключей
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/nn110/.ssh/id_rsa):
Created directory '/c/Users/nn110/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /c/Users/nn110/.ssh/id_rsa
Your public key has been saved in /c/Users/nn110/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:CTK0eHyMNBZe9ucKDMDglm1xw7GXsVmU0LU06IYFOnQ nn110@LAPTOP-P049CSND
The key's randomart image is:
+---[RSA 3072]----+
|.o..B*+E=o++ |
|. +O+O=.*=. o |
| +.oX++== .. |
|. .. *oo * |
| o S . |
| . . |
| . |
| |
| |
+----[SHA256]-----+
22.Запустил агент
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ eval $(ssh-agent -s)
Agent pid 370
23. Загрузил ключ
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ ssh-add
Enter passphrase for /c/Users/nn110/.ssh/id_rsa:
Identity added: /c/Users/nn110/.ssh/id_rsa (nn110@LAPTOP-P049CSND)
24. Отобразил открытй ключ
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDnmyrMCWui6fCT8OwHYJeDQ6j+p5oKGQClc7N1nTabfxCXLyj+Lg+O/KJE/BpN6PZNazGGJUFBZxLiDbdE/VUoCUoSCLFNdF30KmQNbImf6FRpmzCO0frriu80d0b1/rbyPt7fm28N02EJvThoQ313ZsKVrMLvJsrg9RKBWtZdjMi1ZbmmFQd3AUIuRWBS2jPwWPt4WqZ25t56hRJrsgDh8qVc5puqldJwHGj9jOCtl962uKEFV8wIVZzxAC2/YbqERSsO90foC5RusLcl0m56NHKbHIUqvPv7ompUKLjTptoSYo5imgo6M4+uuU0JbQW399lQQDXAw3PqfGovXtu3FJkV9l01IhNKgCNNU3T4Hvr2nvkJnqK8u0oujOfzhfB++Zr4Ix6N5Rrm3L8v0UnE4sxDkQELVIoYRXNFgZcjg+hD99WilKdaOK+688lN+i2yBVUHVbXqf4bujKHF1nsL9PoOJghDY7gklB3PXrqyrYIXQCvHrRcBotkrvecQlnE= nn110@LAPTOP-P049CSND
25. добавил удаленный репозитарий
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git remote add origin http://uit.mpei.ru/git/NemykinNO/cs-lab02.git
26. Загрузил ветку в удаленный репозитарий
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git push -u origin main
Enumerating objects: 9, done.
Counting objects: 100% (9/9), done.
Delta compression using up to 8 threads
Compressing objects: 100% (8/8), done.
Writing objects: 100% (9/9), 2.20 KiB | 322.00 KiB/s, done.
Total 9 (delta 0), reused 0 (delta 0), pack-reused 0
remote: . Processing 1 references
remote: Processed 1 references in total
To http://uit.mpei.ru/git/NemykinNO/cs-lab02.git
* [new branch] main -> main
branch 'main' set up to track 'origin/main'.
27. Скопировал проект в папку Боба
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git clone http://uit.mpei.ru/git/NemykinNO/cs-lab02.git project
Cloning into 'project'...
remote: Enumerating objects: 9, done.
remote: Counting objects: 100% (9/9), done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 9 (delta 0), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (9/9), done.
28. Настроил репозитарий Боба
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main)
$ git config user.name 'Bob (NemykinNO)'
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main)
$ git config user.email 'NemykinNO@mpei.ru'
29. Закоммитил изменения от боба
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main)
$ git commit -a -m "code: Усножение от боба"
[main 5789e27] code: Усножение от боба
1 file changed, 2 insertions(+)
30. Загрузил их в удаленный репозитарий
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main)
$ git push
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), 413 bytes | 206.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 http://uit.mpei.ru/git/NemykinNO/cs-lab02.git
011cce7..5789e27 main -> main
31. Скачал изменения из удаленного репозитария в папку Алисы и закоммитил изменения
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git pull --ff-only
Updating 011cce7..5789e27
Fast-forward
laba02.cpp | 2 ++
1 file changed, 2 insertions(+)
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git commit -a -m "добавление деления от Алисы"
[main d5d389b] добавление деления от Алисы
1 file changed, 3 insertions(+), 2 deletions(-)
32. загрузил изменения на удаленный репозиторий
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git push
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), 422 bytes | 422.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 http://uit.mpei.ru/git/NemykinNO/cs-lab02.git
5789e27..d5d389b main -> main
33. Загрузил изменения в папку Боба
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main)
$ git pull --ff-only
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), 402 bytes | 13.00 KiB/s, done.
From http://uit.mpei.ru/git/NemykinNO/cs-lab02
5789e27..d5d389b main -> origin/main
Updating 5789e27..d5d389b
Fast-forward
laba02.cpp | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
34. Добавил максимум от Алисы
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git commit -a -m "добавление макс от Алисы"
[main a082a0b] добавление макс от Алисы
1 file changed, 6 insertions(+), 1 deletion(-)
35. Отправил на сервер
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git push
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), 433 bytes | 216.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 http://uit.mpei.ru/git/NemykinNO/cs-lab02.git
d5d389b..a082a0b main -> main
36. Боб попытался загрузить изменения
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main)
$ git pull --ff-only
fatal: Not possible to fast-forward, aborting.
37. Боб выполнил команду git rebase
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main)
$ git rebase origin/main
Auto-merging laba02.cpp
CONFLICT (content): Merge conflict in laba02.cpp
error: could not apply 2023f82... добавление min от Боба
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 2023f82... добавление min от Боба
38. Добафил файл laba02.cpp в индекс и продолжил rebase
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main|REBASE 1/1)
$ git add laba02.cpp
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/Bob/project (main|REBASE 1/1)
$ git rebase --continue
[detached HEAD a452f31] добавление min от Боба
1 file changed, 10 insertions(+)
Successfully rebased and updated refs/heads/main.
39.Создал ветку в репозитарии Алисы и переключился на нее
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git branch double
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git checkout double
Switched to branch 'double'
40.Закоммитил изменения
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (double)
$ git commit -a -m "Алиса решила поменять тип"
[double 9a97b96] Алиса решила поменять тип
1 file changed, 1 insertion(+), 1 deletion(-)
41. Переключился на ветку main
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (double)
$ git checkout main
Switched to branch 'main'
Your branch is up to date with 'origin/main'.
42. слил ветку double в main
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git merge double
Auto-merging laba02.cpp
Merge made by the 'ort' strategy.
laba02.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
43. Посмотрел дерево коммитов
nn110@LAPTOP-P049CSND MINGW64 ~/OneDrive/Рабочий стол/laba2/alice/project (main)
$ git log --oneline --decorate --all --graph
* 2354514 (HEAD -> main) Merge branch 'double'
|\
| * 9a97b96 (double) Алиса решила поменять тип
* | a452f31 (origin/main) добавление min от Боба
|/
* a082a0b добавление макс от Алисы
* d5d389b добавление деления от Алисы
* 5789e27 code: Усножение от боба
* 011cce7 git создание .gitignore
* 61af41c добавление разницы
* 7542915 bild: добавлен файл проекта
* 91c7889 code: заготовка программы
Загрузка…
Отмена
Сохранить