Загрузил(а) файлы в ''

main
OgarkovIA 1 год назад
Родитель dbc8a28237
Сommit 0f80225971

@ -0,0 +1,439 @@
Отсчёт по лабораторной работе № 2 "Система контроля версий Git"
Выполнил: Огарков И. А.
Группа: А-02-23
Проверил: Козлюк Д. А.
Примечание: работа выполнялась на Windows.
1. Создал на рабочем столе каталог lab02 и запустил в нем Git Bash, приглашение:
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02
$ ls
2. Просмотрел файлы в рабочем каталоге можно командой "ls" --- пусто:
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02
$ ls
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02
$
3. Создал каталоги Алисы и Боба, создал каталог "project",
изучил команду "cd" в процессе:
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02
$ mkdir alice
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02
$ mkdir bob
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02
$ cd alice
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice
$ mkdir project
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice
$ ls
project/
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice
$ cd project
4. Инициализировал репозитарий:
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project
$ git init
Initialized empty Git repository in C:/Users/Александр/Desktop/lab02/alice/project/.git/
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (master)
$ git branch -m main
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ ls -A
.git/
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git config user.name 'Alice (OgarkovIA)'
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git config user.email 'OgarkovIA@mpei.ru'
5. Создание коммитов
Запустил CodeBlocks и создал проект в репозитории Алисы
(Говорят, что нужно пояснить каждую строку...)
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/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)
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add main.cpp
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m 'code: заготовка программы'
[main be8cf41] code: заготовка программы
1 file changed, 9 insertions(+)
create mode 100644 main.cpp
6. Составление сообщений к коммитам
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/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
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/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: project.cbp
Untracked files:
(use "git add <file>..." to include in what will be committed)
main.cpp
project.layout
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m 'build: добавлен файл проекта'
[main (root-commit) e2c2965] build: добавлен файл проекта
1 file changed, 38 insertions(+)
create mode 100644 project.cbp
Заменил тело функции main() на ввод двух чисел:
cout << "Enter A and B: ";
int a, b;
cin >> a >> b;
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/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
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")
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add main.cpp
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m 'build: замена тела функции main() на ввод двух чисел'
[main b054ecc] build: замена тела функции main() на ввод двух чисел
1 file changed, 5 insertions(+), 1 deletion(-)
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add main.cpp
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m 'build: добавлен вывод суммы чисел a и b'
[main 1d03b32] build: добавлен вывод суммы чисел a и b
1 file changed, 3 insertions(+), 2 deletions(-)
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add main.cpp
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m 'build: добавлен вывод разности чисел a и b'
[main ae25d74] build: добавлен вывод разности чисел a и b
1 file changed, 3 insertions(+)
7. Игнорирование файлов
Создал файл '.gitignore' и добавил в него игнорируемые каталоги и файлы
$ 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: .gitignore
Untracked files:
(use "git add <file>..." to include in what will be committed)
Empty.c
no changes added to commit (use "git add" and/or "git commit -a")
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git add .gitignore
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git commit -m 'git: добавлен .gitignore для игнорирования каталога bin и obj, а также файлов *.layout'
[main 8536918] git: добавлен .gitignore для игнорирования каталога bin и obj, а также файлов *.layout
1 file changed, 1 insertion(+), 1 deletion(-)
8. Просмотр истории
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log
commit 8536918c1245f46b7fc5a65cb04d5c0f5002cb14 (HEAD -> main)
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 22:30:48 2024 +0300
git: добавлен .gitignore для игнорирования каталога bin и obj, а также файлов *.layout
commit 6ea8a095758e80e6e0e2219e3bf2e8e553bf182b
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 22:25:57 2024 +0300
git: добавлен .gitignore для игнорирования каталога bin и obj, а также файлов *.layout
commit ae25d7438090f0c5b7c27ba5eec200abfce615d7
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 22:05:04 2024 +0300
build: добавлен вывод разности чисел a и b
commit 1d03b32a96ebe4050d33193e058616a9165cbbb4
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 21:50:28 2024 +0300
build: добавлен вывод суммы чисел a и b
commit b054ecc9e38c43592c0f5ec09de2b67a06b2a22d
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 20:06:39 2024 +0300
:
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --stat
commit 8536918c1245f46b7fc5a65cb04d5c0f5002cb14 (HEAD -> main)
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 22:30:48 2024 +0300
git: добавлен .gitignore для игнорирования каталога bin и obj, а также файлов *.layout
.gitignore | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
commit 6ea8a095758e80e6e0e2219e3bf2e8e553bf182b
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 22:25:57 2024 +0300
git: добавлен .gitignore для игнорирования каталога bin и obj, а также файлов *.layout
.gitignore | 3 +++
1 file changed, 3 insertions(+)
commit ae25d7438090f0c5b7c27ba5eec200abfce615d7
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 22:05:04 2024 +0300
build: добавлен вывод разности чисел a и b
main.cpp | 3 +++
1 file changed, 3 insertions(+)
commit 1d03b32a96ebe4050d33193e058616a9165cbbb4
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --oneline --decorate
8536918 (HEAD -> main) git: добавлен .gitignore для игнорирования каталога bin и obj, а также файлов *.layout
6ea8a09 git: добавлен .gitignore для игнорирования каталога bin и obj, а также файлов *.layout
ae25d74 build: добавлен вывод разности чисел a и b
1d03b32 build: добавлен вывод суммы чисел a и b
b054ecc build: замена тела функции main() на ввод двух чисел
be8cf41 code: заготовка программы
e2c2965 build: добавлен файл проекта
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --oneline --decorate --all --graph
* 8536918 (HEAD -> main) git: добавлен .gitignore для игнорирования каталога bin и obj, а также файлов *.layout
* 6ea8a09 git: добавлен .gitignore для игнорирования каталога bin и obj, а также файлов *.layout
* ae25d74 build: добавлен вывод разности чисел a и b
* 1d03b32 build: добавлен вывод суммы чисел a и b
* b054ecc build: замена тела функции main() на ввод двух чисел
* be8cf41 code: заготовка программы
* e2c2965 build: добавлен файл проекта
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log -- main.cpp
commit ae25d7438090f0c5b7c27ba5eec200abfce615d7
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 22:05:04 2024 +0300
build: добавлен вывод разности чисел a и b
commit 1d03b32a96ebe4050d33193e058616a9165cbbb4
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 21:50:28 2024 +0300
build: добавлен вывод суммы чисел a и b
commit b054ecc9e38c43592c0f5ec09de2b67a06b2a22d
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 20:06:39 2024 +0300
build: замена тела функции main() на ввод двух чисел
commit be8cf41c0af8cde0b64c35b0f974aeb4cf3d1ba3
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 19:49:33 2024 +0300
code: заготовка программы
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --grep 'code:'
commit be8cf41c0af8cde0b64c35b0f974aeb4cf3d1ba3
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 19:49:33 2024 +0300
code: заготовка программы
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log --grep 'build:'
commit ae25d7438090f0c5b7c27ba5eec200abfce615d7
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 22:05:04 2024 +0300
build: добавлен вывод разности чисел a и b
commit 1d03b32a96ebe4050d33193e058616a9165cbbb4
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 21:50:28 2024 +0300
build: добавлен вывод суммы чисел a и b
commit b054ecc9e38c43592c0f5ec09de2b67a06b2a22d
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 20:06:39 2024 +0300
build: замена тела функции main() на ввод двух чисел
commit e2c29656fbea656b57631f33c2c7a19a27d81f9d
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 19:46:47 2024 +0300
build: добавлен файл проекта
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git log -- project.cbp
commit e2c29656fbea656b57631f33c2c7a19a27d81f9d
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 19:46:47 2024 +0300
build: добавлен файл проекта
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git show HEAD~2
commit ae25d7438090f0c5b7c27ba5eec200abfce615d7
Author: Alice (OgarkovIA) <OgarkovIA@mpei.ru>
Date: Sat Mar 23 22:05:04 2024 +0300
build: добавлен вывод разности чисел a и b
diff --git a/main.cpp b/main.cpp
index 0789c44..ecca766 100644
--- a/main.cpp
+++ b/main.cpp
@@ -10,5 +10,8 @@ int main() {
int sum = a + b;
cout << "Sum of A and B is: " << sum << endl;
+ int difference = a - b;
+ cout << "Difference of A and B is: " << difference << endl;
+
return 0;
}
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git diff HEAD~2
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..9d83ebf
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,3 @@
+/bin
+/obj
+*.layout
9. Отказ изменений
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git reset --hard HEAD~1
HEAD is now at 6ea8a09 git: добавлен .gitignore для игнорирования каталога bin и obj, а также файлов *.layout
Добавил над функцией main() комментарий: // you may type whatever you want
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ git checkout HEAD -- main.cpp
10. Обмен кодом через удалённое хранилище
Сделал регистрацию на сайте Git УИТ
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/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\220\320\273\320\265\320\272\321\201\320\260\320\275\320\264\321\200/.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:cM4BHuYMNX5QKY+NY+w4ovZj8jcYJa3SUntV+J1TBQ0 Александр@DESKTOP-VHTT7N5
The key's randomart image is:
+--[ED25519 256]--+
| ..B.o. E=. |
| B.*.. . . |
| ..*** . o |
| o o*Boo + |
| o =+..S . |
| o.=o.. |
| .o.+. |
|.o + o |
|. =oo . |
+----[SHA256]-----+
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ eval $(ssh-agent -s)
Agent pid 2185
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ ssh-add
Enter passphrase for /c/Users/Александр/.ssh/id_ed25519:
Identity added: /c/Users/Александр/.ssh/id_ed25519 (Александр@DESKTOP-VHTT7N5)
Александр@DESKTOP-VHTT7N5 MINGW64 ~/Desktop/lab02/alice/project (main)
$ cat ~/.ssh/id_ed25519.pub
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICFHv0MW5ahhx8YMeo/JBwqOXU8eSfOShn9+ZqJWxzAc Александр@DESKTOP-VHTT7N5
Скопировал открытый ключ и добавил в список открытых ключейсвоей учётной записи
Загрузка…
Отмена
Сохранить