Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
439 строки
14 KiB
Plaintext
439 строки
14 KiB
Plaintext
Отчет по лабораторной работе № 2 "Система контроля версий Git"
|
|
|
|
Выполнил: Мамедов Р. М.
|
|
Группа: А-01-22
|
|
Проверил: Козлюк Д. А.
|
|
|
|
Примечание: работа выполнялась на Windows.
|
|
|
|
1. Создал на рабочем столе каталог lab02 и запустил в нем Git Bash, приглашение:
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2
|
|
$
|
|
|
|
2. Просмотрел файлы в рабочем каталоге можно командой "ls" --- пусто:
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2
|
|
$ ls
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2
|
|
$
|
|
|
|
3. Создал каталоги Алисы и Боба, создал каталог "project",
|
|
изучил команду "cd" в процессе:
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2
|
|
$ mkdir alise
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2
|
|
$ mkdir bob
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2
|
|
$ cd bob
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/bob
|
|
$ cd ..
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2
|
|
$ cd alise
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise
|
|
$ mkdir project
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise
|
|
$ ls
|
|
project/
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise
|
|
$ cd project
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project
|
|
$
|
|
|
|
4. Инициализировал репозитарий:
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project
|
|
$ git init
|
|
Initialized empty Git repository in C:/Users/пк/OneDrive/Рабочий стол/labs2/alise/project/.git/
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project (master)
|
|
$
|
|
|
|
У меня имя ветки по умолчанию не настроено.
|
|
Git создал ветку под названием master, что видно в приглашении терминала.
|
|
Подсказка говорит о том, как поменять имя ветки.
|
|
Я принял решение не менять имя ветки.
|
|
|
|
5. Поменял имя ветки на main
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project (master)
|
|
$ git branch -m main
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project (main)
|
|
$
|
|
|
|
6. Настроили репрозитариии
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project (main)
|
|
$ git config user.name 'Alise (Mamedov R.M.)'
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project (main)
|
|
$ git config user.email 'MamedovRasM@mpei.ru'
|
|
|
|
7. Создал проект и провериле его сборку
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project (main)
|
|
$ git status
|
|
On branch main
|
|
|
|
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)
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project (main)
|
|
|
|
|
|
8. Начнем отслеживание файла и посмотрели измение его статуса.
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project (main)
|
|
$ git add main.cpp
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/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)
|
|
bin/
|
|
obj/
|
|
project.cbp
|
|
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project (main)
|
|
$
|
|
|
|
9. Выполнили коммит с файлом main.cpp и коротким сообщением
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project (main)
|
|
$ git commit -m 'code: заготовка програ>
|
|
[main (root-commit) 063484c] code: заготовка программы
|
|
1 file changed, 9 insertions(+)
|
|
create mode 100644 main.cpp
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project (main)
|
|
$
|
|
|
|
10. Составил сообщение к коммиту
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project (main)
|
|
$ git add project.cbp
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/project (main)
|
|
$ git commit -m 'build: add project file'
|
|
[main d0621f6] build: add project file
|
|
1 file changed, 40 insertions(+)
|
|
create mode 100644 project.cbp
|
|
|
|
11. Изменили програму и проверили ее статус
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/labs2/alise/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")
|
|
|
|
12. Провеели игнорирование файлов и создали новый коммит
|
|
|
|
$ git status
|
|
On branch main
|
|
Your branch is up to date with 'origin/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)
|
|
.gitignore
|
|
main.exe
|
|
main.o
|
|
|
|
no changes added to commit (use "git add" and/or "git commit -a")
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main)
|
|
$ git add .gitignore
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main)
|
|
$ git commit -m "git"
|
|
[main d67db41] git
|
|
1 file changed, 3 insertions(+)
|
|
create mode 100644 .gitignore
|
|
|
|
13. Посмотрели журнал репозитария
|
|
|
|
$ git log --stat
|
|
commit d67db41346675bf7dcffecdc4ca3f26acfb83cdb (HEAD -> main)
|
|
Author: alise (MamedovRM)q <MamedovRasM@mpei.ru>
|
|
Date: Mon Mar 27 09:38:50 2023 +0300
|
|
|
|
git
|
|
|
|
.gitignore | 3 +++
|
|
1 file changed, 3 insertions(+)
|
|
|
|
commit c6b715dd2c2195b291ab5e561a1963785698c38e (origin/main)
|
|
Author: alise (MamedovRM)q <MamedovRasM@mpei.ru>
|
|
Date: Sun Mar 26 23:42:19 2023 +0300
|
|
|
|
first commit
|
|
|
|
README.md | 0
|
|
1 file changed, 0 insertions(+), 0 deletions(-)
|
|
|
|
commit 2c1bacad0ab04431794ab27d586a8053e47ed8f1 (master)
|
|
Author: alise (MamedovRM)q <MamedovRasM@mpei.ru>
|
|
Date: Sun Mar 26 20:35:34 2023 +0300
|
|
|
|
main
|
|
|
|
Здесь показанны все созданые нами коммиты
|
|
|
|
14. Нашли сначала коммиты по теме build, затем коммиты, затрагивающие project.cbp.
|
|
|
|
$ git log -- project.cbp
|
|
commit 2f0eacf19c6a053680a5aa451ae4c345d3012e15
|
|
Author: alise (MamedovRM)q <MamedovRasM@mpei.ru>
|
|
Date: Sun Mar 26 20:30:44 2023 +0300
|
|
|
|
build: add project file
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main)
|
|
$ git log --grep "build"
|
|
commit 2f0eacf19c6a053680a5aa451ae4c345d3012e15
|
|
Author: alise (MamedovRM)q <MamedovRasM@mpei.ru>
|
|
Date: Sun Mar 26 20:30:44 2023 +0300
|
|
|
|
build: add project file
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main)
|
|
|
|
15. Просмотрели последний коммит, а после предпоследний
|
|
|
|
$ git show HEAD
|
|
commit d67db41346675bf7dcffecdc4ca3f26acfb83cdb (HEAD -> main)
|
|
Author: alise (MamedovRM)q <MamedovRasM@mpei.ru>
|
|
Date: Mon Mar 27 09:38:50 2023 +0300
|
|
|
|
git
|
|
|
|
diff --git a/.gitignore b/.gitignore
|
|
new file mode 100644
|
|
index 0000000..4d72a82
|
|
--- /dev/null
|
|
+++ b/.gitignore
|
|
@@ -0,0 +1,3 @@
|
|
+/bin
|
|
+/obj
|
|
+/project.layout
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main)
|
|
$ git show HEAD~1
|
|
commit c6b715dd2c2195b291ab5e561a1963785698c38e (origin/main)
|
|
Author: alise (MamedovRM)q <MamedovRasM@mpei.ru>
|
|
Date: Sun Mar 26 23:42:19 2023 +0300
|
|
|
|
first commit
|
|
|
|
diff --git a/README.md b/README.md
|
|
new file mode 100644
|
|
index 0000000..e69de29
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main)
|
|
$
|
|
|
|
16. Просмотрели изменения при добавлении произвидения
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main)
|
|
$ git diff
|
|
diff --git a/main.cpp b/main.cpp
|
|
index 03b22ce..2ae51fd 100644
|
|
--- a/main.cpp
|
|
+++ b/main.cpp
|
|
@@ -7,5 +7,7 @@ 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<<"A*B="<<a*b;
|
|
return 0;
|
|
}
|
|
|
|
17. Сгенерировали несколько ключей
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main)
|
|
$ 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:
|
|
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:r8qwji5QdYCSgwGzbw2WFutNupnd8YnkaFPN3WH9bWY пк@LAPTOP-CREQCQ89
|
|
The key's randomart image is:
|
|
+---[RSA 3072]----+
|
|
|*o.... |
|
|
|=o.+. . . |
|
|
|.o*... o . |
|
|
| =.* o . o . ..|
|
|
| .= o + S . . E|
|
|
|.. = * + o + |
|
|
|. + * + o . |
|
|
|. o = . |
|
|
| oo.o o.. |
|
|
+----[SHA256]-----+
|
|
|
|
|
|
18. Подключился к серверу
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main)
|
|
$ git remote add origin git@uit.mpei.ru:MamedovRasM/laba.git
|
|
error: remote origin already exists.
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main)
|
|
$ git push -u origin main
|
|
Enumerating objects: 4, done.
|
|
Counting objects: 100% (4/4), done.
|
|
Delta compression using up to 8 threads
|
|
Compressing objects: 100% (2/2), done.
|
|
Writing objects: 100% (3/3), 374 bytes | 187.00 KiB/s, done.
|
|
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
|
|
remote: . Processing 1 references
|
|
remote: Processed 1 references in total
|
|
To uit.mpei.ru:MamedovRasM/cs-lab02.git
|
|
c6b715d..d67db41 main -> main
|
|
branch 'main' set up to track 'origin/main'.
|
|
|
|
19. Произвели клонирование в папку bob
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob
|
|
$ git clone git@uit.mpei.ru:MamedovRasM/cs-lab02.git project
|
|
Cloning into 'project'...
|
|
remote: Enumerating objects: 15, done.
|
|
remote: Counting objects: 100% (15/15), done.
|
|
remote: Compressing objects: 100% (12/12), done.
|
|
remote: Total 15 (delta 1), reused 0 (delta 0), pack-reused 0
|
|
Receiving objects: 100% (15/15), 1.82 KiB | 465.00 KiB/s, done.
|
|
Resolving deltas: 100% (1/1), done.
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob
|
|
$ cd project
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main)
|
|
$
|
|
|
|
20. Отправили боба на сервер
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main)
|
|
$ git add main.cpp
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/bob/project (main)
|
|
$ git commit -m "code"
|
|
[main 6bfae4d] code
|
|
1 file changed, 2 insertions(+)
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/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), 319 bytes | 319.00 KiB/s, done.
|
|
Total 3 (delta 2), reused 0 (delta 0), pack-reused 0
|
|
remote: . Processing 1 references
|
|
remote: Processed 1 references in total
|
|
To uit.mpei.ru:MamedovRasM/cs-lab02.git
|
|
d67db41..6bfae4d main -> main
|
|
|
|
21. Просмотрели историю всех веток
|
|
|
|
$ 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 2), reused 0 (delta 0), pack-reused 0
|
|
Unpacking objects: 100% (3/3), 299 bytes | 10.00 KiB/s, done.
|
|
From uit.mpei.ru:MamedovRasM/cs-lab02
|
|
d67db41..6bfae4d main -> origin/main
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project (main)
|
|
$ git log --oneline --decorate --all --graph
|
|
* 6bfae4d (origin/main) code
|
|
* d67db41 (HEAD -> main) git
|
|
* c6b715d first commit
|
|
* 2c1baca (master) main
|
|
* 2f0eacf build: add project file
|
|
* 6beda51 code: заготовка программы
|
|
|
|
22. Создал на Алисе ветку double и сделали коммит
|
|
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project/project (main)
|
|
$ git branch double
|
|
|
|
пк@LAPTOP-CREQCQ89 MINGW64 ~/OneDrive/Рабочий стол/lab02/alise/project/project (main)
|
|
$ git checkout double
|
|
Switched to branch 'double
|
|
|
|
$ git commit -m "double"
|
|
On branch double
|
|
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
|
|
|
|
23. Перешли на ветку main и отправили все на сервер
|
|
|
|
$ git fetch
|
|
remote: Enumerating objects: 11, done.
|
|
remote: Counting objects: 100% (11/11), done.
|
|
remote: Compressing objects: 100% (9/9), done.
|
|
remote: Total 9 (delta 5), reused 0 (delta 0), pack-reused 0
|
|
Unpacking objects: 100% (9/9), 934 bytes | 15.00 KiB/s, done.
|
|
From uit.mpei.ru:MamedovRasM/cs-lab02
|
|
d67db41..09001d3 main -> origin/main
|
|
|
|
24. Слили ветку double в main
|
|
|
|
$ git merge double
|
|
Already up to date.
|
|
|
|
|
|
|
|
|
|
|