Родитель
a963bbbea0
Сommit
b4fe7e11ce
@ -0,0 +1,465 @@
|
||||
Отчет по лабораторной работе № 2 "Система контроля версий Git"
|
||||
|
||||
Выполнил: Ершов А.А.
|
||||
Группа: А-01-22
|
||||
Проверил:
|
||||
|
||||
Примечание: работа выполнялась на Windows.
|
||||
|
||||
1. Создал на рабочем столе каталог lab02 и запустил в нем Git Bash, приглашение:
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02
|
||||
|
||||
2. Создал два имитируемых пользователя
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02
|
||||
$ mkdir alice
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02
|
||||
$ mkdir bob
|
||||
|
||||
3. Переключился на "компьютер" алисы
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02
|
||||
$ cd alice
|
||||
|
||||
4. Создал каталог проект
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice
|
||||
$ mkdir project
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice
|
||||
$ cd project
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project
|
||||
$ cd ..
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice
|
||||
$ cd project
|
||||
|
||||
5. Инициализируем репозитарий в текущем каталоге
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project
|
||||
$ git init
|
||||
Initialized empty Git repository in C:/Users/senya/OneDrive/Рабочий стол/lab02/alice/project/.git/
|
||||
|
||||
6. Настраиваем репозиторий алисы
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git config user.name 'Alice (YershovArA)'
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git config user.email 'YershovArA@mpei.ru'
|
||||
|
||||
7. Проверка состояния рабочей версии
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git status
|
||||
On branch main
|
||||
|
||||
No commits yet
|
||||
|
||||
Untracked files:
|
||||
(use "git add <file>..." to include in what will be committed)
|
||||
main.cpp
|
||||
project.cbp
|
||||
project.layout
|
||||
|
||||
nothing added to commit but untracked files present (use "git add" to track)
|
||||
|
||||
8. Добавляем файл в индекс
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git add main.cpp
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git status
|
||||
On branch main
|
||||
|
||||
No commits yet
|
||||
|
||||
Changes to be committed:
|
||||
(use "git rm --cached <file>..." to unstage)
|
||||
new file: main.cpp
|
||||
|
||||
Untracked files:
|
||||
(use "git add <file>..." to include in what will be committed)
|
||||
project.cbp
|
||||
project.layout
|
||||
|
||||
9. Выполняем коммит с файлом
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git commit -m 'code: заготовка программы'
|
||||
[main (root-commit) add19a3] code: заготовка программы
|
||||
1 file changed, 1 insertion(+)
|
||||
create mode 100644 main.cpp
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/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
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git commit -m 'build: добавление файла проекта'
|
||||
[main 350845f] build: добавление файла проекта
|
||||
1 file changed, 38 insertions(+)
|
||||
create mode 100644 project.cbp
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/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
|
||||
modified: project.cbp
|
||||
|
||||
Untracked files:
|
||||
(use "git add <file>..." to include in what will be committed)
|
||||
bin/
|
||||
obj/
|
||||
project.layout
|
||||
|
||||
no changes added to commit (use "git add" and/or "git commit -a")
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git add main.cpp
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git commit -m "code: добавление вывода суммы и разности"
|
||||
[main 12812da] code: добавление вывода суммы и разности
|
||||
1 file changed, 11 insertions(+)
|
||||
|
||||
10. Добавил игнорирование ненужных файлов
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/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: project.cbp
|
||||
|
||||
Untracked files:
|
||||
(use "git add <file>..." to include in what will be committed)
|
||||
.gitignore
|
||||
|
||||
no changes added to commit (use "git add" and/or "git commit -a")
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git add .gitignore
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git commit -m "git: игнорирование не нужных файлов"
|
||||
[main 8bd4125] git: игнорирование не нужных файлов
|
||||
1 file changed, 4 insertions(+)
|
||||
create mode 100644 .gitignore
|
||||
|
||||
11. Просмотр истории
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git log --stat
|
||||
commit 8bd4125dac490644cb906db5586409758e5f2e6a (HEAD -> main)
|
||||
Author: Alice (YershovArA) <YershovArA@mpei.ru>
|
||||
Date: Sun Mar 26 23:25:54 2023 +0300
|
||||
|
||||
git: игнорирование не нужных файлов
|
||||
|
||||
.gitignore | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
commit 12812daa6ae5ea0a1d4716005090efdc0586bc4a
|
||||
Author: Alice (YershovArA) <YershovArA@mpei.ru>
|
||||
Date: Sun Mar 26 23:09:04 2023 +0300
|
||||
|
||||
code: добавление вывода суммы и разности
|
||||
|
||||
main.cpp | 11 +++++++++++
|
||||
1 file changed, 11 insertions(+)
|
||||
|
||||
commit 350845fb8e848e26ccecfeed6aaa9b20c8be4594
|
||||
Author: Alice (YershovArA) <YershovArA@mpei.ru>
|
||||
Date: Sun Mar 26 22:54:54 2023 +0300
|
||||
|
||||
build: добавление файла проекта
|
||||
|
||||
12. То же самое, но компактнее
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git log --oneline --decorate
|
||||
8bd4125 (HEAD -> main) git: игнорирование не нужных файлов
|
||||
12812da code: добавление вывода суммы и разности
|
||||
350845f build: добавление файла проекта
|
||||
add19a3 code: заготовка программы
|
||||
|
||||
13. То же самое для всех веток
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git log --oneline --decorate --all -graph
|
||||
fatal: unrecognized argument: -graph
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git log --oneline --decorate --all --graph
|
||||
* 8bd4125 (HEAD -> main) git: игнорирование не нужных файлов
|
||||
* 12812da code: добавление вывода суммы и разности
|
||||
* 350845f build: добавление файла проекта
|
||||
* add19a3 code: заготовка программы
|
||||
|
||||
14. Поиск определенных коммитов
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git log -- project.cbp --grep "build:"
|
||||
commit 350845fb8e848e26ccecfeed6aaa9b20c8be4594
|
||||
Author: Alice (YershovArA) <YershovArA@mpei.ru>
|
||||
Date: Sun Mar 26 22:54:54 2023 +0300
|
||||
|
||||
build: добавление файла проекта
|
||||
|
||||
15. Просмотр коммита
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git show 12812da
|
||||
commit 12812daa6ae5ea0a1d4716005090efdc0586bc4a
|
||||
Author: Alice (YershovArA) <YershovArA@mpei.ru>
|
||||
Date: Sun Mar 26 23:09:04 2023 +0300
|
||||
|
||||
code: добавление вывода суммы и разности
|
||||
|
||||
diff --git a/main.cpp b/main.cpp
|
||||
index 8b13789..b77eb33 100644
|
||||
--- a/main.cpp
|
||||
+++ b/main.cpp
|
||||
@@ -1 +1,12 @@
|
||||
+#include <math.h>
|
||||
+#include <iostream>
|
||||
+using namespace std;
|
||||
|
||||
+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';
|
||||
+
|
||||
+}
|
||||
|
||||
16. Изменения между коммитами
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git diff HEAD~3 HEAD
|
||||
diff --git a/.gitignore b/.gitignore
|
||||
new file mode 100644
|
||||
index 0000000..f399573
|
||||
--- /dev/null
|
||||
+++ b/.gitignore
|
||||
@@ -0,0 +1,4 @@
|
||||
+/obj
|
||||
+/bin
|
||||
+project.depend
|
||||
+project.layout
|
||||
diff --git a/main.cpp b/main.cpp
|
||||
index 8b13789..b77eb33 100644
|
||||
--- a/main.cpp
|
||||
+++ b/main.cpp
|
||||
@@ -1 +1,12 @@
|
||||
+#include <math.h>
|
||||
+#include <iostream>
|
||||
+using namespace std;
|
||||
|
||||
+int main(){
|
||||
+ cout << "Enter A and B: ";
|
||||
+ int a, b;
|
||||
+ cin >> a >> b;
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git add main.cpp
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git commit -m "code: добавление произведения"
|
||||
[main 80fb14c] code: добавление произведения
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git show HEAD
|
||||
commit 80fb14cb10fca565e88df91c4ed9a55418991a36 (HEAD -> main)
|
||||
Author: Alice (YershovArA) <YershovArA@mpei.ru>
|
||||
Date: Sun Mar 26 23:42:08 2023 +0300
|
||||
|
||||
code: добавление произведения
|
||||
|
||||
diff --git a/main.cpp b/main.cpp
|
||||
index b77eb33..b4e9899 100644
|
||||
--- a/main.cpp
|
||||
+++ b/main.cpp
|
||||
@@ -8,5 +8,6 @@ int main(){
|
||||
cin >> a >> b;
|
||||
cout << "A + B = " << a + b << '\n';
|
||||
cout << "A - B = " << a - b << '\n';
|
||||
+ cout << "A * B = " << a * b << '\n';
|
||||
|
||||
}
|
||||
|
||||
16. Откат
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git reset --hard HEAD~1
|
||||
HEAD is now at 8bd4125 git: игнорирование не нужных файлов
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git checkout HEAD -- main.cpp
|
||||
|
||||
17. Генерирование ключей
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ ssh-keygen
|
||||
Generating public/private rsa key pair.
|
||||
Enter file in which to save the key (/c/Users/senya/.ssh/id_rsa):
|
||||
Created directory '/c/Users/senya/.ssh'.
|
||||
Enter passphrase (empty for no passphrase):
|
||||
Enter same passphrase again:
|
||||
Your identification has been saved in /c/Users/senya/.ssh/id_rsa
|
||||
Your public key has been saved in /c/Users/senya/.ssh/id_rsa.pub
|
||||
The key fingerprint is:
|
||||
SHA256:UPFRX9Y6vRtxp6do5KzVNKtrHD0RP0WpoYIhA/Kjmjo senya@Senya
|
||||
The key's randomart image is:
|
||||
+---[RSA 3072]----+
|
||||
| . .. o.... .*|
|
||||
| o o o . . o.+o|
|
||||
| o + o . . +=.|
|
||||
| . . o . . .+o=|
|
||||
| . S . .o+*|
|
||||
|.. oo+=.|
|
||||
|o =.oo+o|
|
||||
|E .B... |
|
||||
|.. .+o. |
|
||||
+----[SHA256]-----+
|
||||
|
||||
18.запуск агента
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ eval $(ssh-agent -s)
|
||||
Agent pid 1120
|
||||
|
||||
19. Загрузка ключа
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ ssh-add
|
||||
Enter passphrase for /c/Users/senya/.ssh/id_rsa:
|
||||
Identity added: /c/Users/senya/.ssh/id_rsa (senya@Senya)
|
||||
|
||||
20. Отображение открытого ключа
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ cat ~/.ssh/id_rsa.pub
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCdTUYZ+bO88y45TOYQCW8fPExyyLLGtZ5X4KYZAWDVWvI9hgr4ldxVpB4LPYPU4cCDxblDjR8wDq6mO6mHNuf04ea0lt9k5ncmIRuwzMWkMzd2gZz7tYEHAWjHXTV3j8+NKyGK+C7VsrYatIy8F37PMenelA2emdjUguv+84D3OvP2SfPRU9Xe9JD3KsZILTFqI3K0Y/IxxDntRRt4bmfKN+R8sdLvItP+jP4Hf99SITGEcU0IA/1ibG/iANdl83ZjgkkYvnq99Txv6nqtJhLCXVOSzVGE26S6FiOEJmFhr4qZReScKta5ShGWZH73Y+J+r5denbSsFLuU5+Ic/w1u2jkJL8tgS4kltRW35+E61Yc139TyXA/OENFmI7/9cviA2yJ/iskldAL/3uKmHvHLOVOnCxHBFHsNviwicRx2E1l4X9EXWf/pHp9aHQa11hMwHmaL8eXqhRTxzpwlAaxpyKzczpmiNWYeAy5GL491neMZ+kGDNZpLyI/GSaIzqXE= senya@Senya
|
||||
|
||||
21. Создание репозитория
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git remote add origin git@uit.mpei.ru:YershovArA/cs-lab02.git
|
||||
|
||||
22. Создание "компьютера" боба
|
||||
(текст утреян)
|
||||
|
||||
23. Загрузка на сервер
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git push -u origin main
|
||||
The authenticity of host 'uit.mpei.ru (193.233.68.149)' can't be established.
|
||||
ED25519 key fingerprint is SHA256:Q5w0UKEzQKA3J6NyMtjwCLvtAykoxdugIXjx6NwU4NA.
|
||||
This key is not known by any other names.
|
||||
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
|
||||
Warning: Permanently added 'uit.mpei.ru' (ED25519) to the list of known hosts.
|
||||
Enumerating objects: 12, done.
|
||||
Counting objects: 100% (12/12), done.
|
||||
Delta compression using up to 12 threads
|
||||
Compressing objects: 100% (9/9), done.
|
||||
Writing objects: 100% (12/12), 1.66 KiB | 568.00 KiB/s, done.
|
||||
Total 12 (delta 0), reused 0 (delta 0), pack-reused 0
|
||||
remote: . Processing 1 references
|
||||
remote: Processed 1 references in total
|
||||
To uit.mpei.ru:YershovArA/cs-lab02.git
|
||||
* [new branch] main -> main
|
||||
branch 'main' set up to track 'origin/main'.
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git remote -v
|
||||
origin git@uit.mpei.ru:YershovArA/cs-lab02.git (fetch)
|
||||
origin git@uit.mpei.ru:YershovArA/cs-lab02.git (push)
|
||||
|
||||
24. Загрузка изменений
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/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), 412 bytes | 51.00 KiB/s, done.
|
||||
From uit.mpei.ru:YershovArA/cs-lab02
|
||||
8bd4125..5bf7e5e main -> origin/main
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git log --oneline --decorate --all --graph
|
||||
* 5bf7e5e (origin/main) code: добавлена печать произведения
|
||||
* 8bd4125 (HEAD -> main) git: игнорирование не нужных файлов
|
||||
* 12812da code: добавление вывода суммы и разности
|
||||
* 350845f build: добавление файла проекта
|
||||
* add19a3 code: заготовка программы
|
||||
|
||||
25. Продвигаем ветку мэин к скачанной версии
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git pull --ff-only
|
||||
Updating 8bd4125..5bf7e5e
|
||||
Fast-forward
|
||||
main.cpp | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git add main.cpp
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git commit -m "code: добавлена печать частного"
|
||||
[main d09a522] code: добавлена печать частного
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
26. Отправка коммита
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git push
|
||||
Enumerating objects: 5, done.
|
||||
Counting objects: 100% (5/5), done.
|
||||
Delta compression using up to 12 threads
|
||||
Compressing objects: 100% (3/3), done.
|
||||
Writing objects: 100% (3/3), 421 bytes | 421.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:YershovArA/cs-lab02.git
|
||||
5bf7e5e..d09a522 main -> main
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git add main.cpp
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git commit -m "code: добавлен вывод минимума"
|
||||
[main b899325] code: добавлен вывод минимума
|
||||
1 file changed, 5 insertions(+), 2 deletions(-)
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git push
|
||||
Enumerating objects: 5, done.
|
||||
Counting objects: 100% (5/5), done.
|
||||
Delta compression using up to 12 threads
|
||||
Compressing objects: 100% (3/3), done.
|
||||
Writing objects: 100% (3/3), 438 bytes | 438.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:YershovArA/cs-lab02.git
|
||||
d09a522..b899325 main -> main
|
||||
|
||||
senya@Senya MINGW64 ~/OneDrive/Рабочий стол/lab02/alice/project (main)
|
||||
$ git pull --ff-only
|
||||
|
||||
Already up to date.
|
||||
|
Загрузка…
Ссылка в новой задаче