Загрузил(а) файлы в ''
Этот коммит содержится в:
834
отчет к lab02.txt
Обычный файл
834
отчет к lab02.txt
Обычный файл
@@ -0,0 +1,834 @@
|
||||
Отчет по лабораторной работе №2 «Система контроля версий GIT»
|
||||
|
||||
Выполнил: Бутко З.В.
|
||||
Группа: А-03-23
|
||||
Проверил: Козлюк Д.А.
|
||||
|
||||
Примечание: работа выполнялась на MAC OS.
|
||||
|
||||
1. Создал на рабочем столе каталог lab02 и запустил в нем терминал:
|
||||
|
||||
Last login: Sat Feb 10 20:33:50 on console
|
||||
zakhar@MacBook-Air-Zakhar lab02 %
|
||||
|
||||
2. Просмотрел файлы в рабочем каталоге можно командой "ls" --- пусто:
|
||||
|
||||
zakhar@MacBook-Air-Zakhar lab02 % $ls
|
||||
zakhar@MacBook-Air-Zakhar lab02 %
|
||||
|
||||
3. Создал каталоги Алисы и Боба, создал каталог "project",
|
||||
изучил команду "cd" в процессе:
|
||||
|
||||
zakhar@MacBook-Air-Zakhar lab02 % mkdir alice
|
||||
zakhar@MacBook-Air-Zakhar lab02 % mkdir bob
|
||||
zakhar@MacBook-Air-Zakhar lab02 % cd alice
|
||||
zakhar@MacBook-Air-Zakhar alice % mkdir project
|
||||
zakhar@MacBook-Air-Zakhar alice % cd project
|
||||
zakhar@MacBook-Air-Zakhar project % cd ..
|
||||
zakhar@MacBook-Air-Zakhar alice % cd ..
|
||||
zakhar@MacBook-Air-Zakhar lab02 % cd alice
|
||||
zakhar@MacBook-Air-Zakhar alice % cd project
|
||||
zakhar@MacBook-Air-Zakhar project %
|
||||
|
||||
4. Инициализировал репозитарий:
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git init
|
||||
Initialized empty Git repository in /Users/zakhar/Documents/lab02/alice/project/.git/
|
||||
zakhar@MacBook-Air-Zakhar project % git branch -m main
|
||||
zakhar@MacBook-Air-Zakhar project % ls -A
|
||||
zakhar@MacBook-Air-Zakhar project % git config user.name 'Alice (ButkoZV)'
|
||||
zakhar@MacBook-Air-Zakhar project % git config user.email 'ButkoZV@mpei.ru'
|
||||
zakhar@MacBook-Air-Zakhar project % git status
|
||||
On branch main
|
||||
|
||||
No commits yet
|
||||
|
||||
Untracked files:
|
||||
(use "git add <file>..." to include in what will be committed)
|
||||
main
|
||||
main.cpp
|
||||
main.dSYM/
|
||||
|
||||
nothing added to commit but untracked files present (use "git add" to track)
|
||||
|
||||
5. Внес индекс в фаил:
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git add main.cpp
|
||||
zakhar@MacBook-Air-Zakhar project % 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)
|
||||
main
|
||||
main.dSYM/
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git commit -m 'code: заготовка программы'
|
||||
[main (root-commit) d40b59d] code: заготовка программы
|
||||
1 file changed, 7 insertions(+)
|
||||
create mode 100644 main.cpp
|
||||
|
||||
6 Изменения кода:
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % 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)
|
||||
main
|
||||
main.dSYM/
|
||||
|
||||
no changes added to commit (use "git add" and/or "git commit -a")
|
||||
|
||||
первый способ (ввод а и b)
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git add main.cpp
|
||||
zakhar@MacBook-Air-Zakhar project % git commit -m 'code: сделал коммит'
|
||||
[main 7bff90e] code: сделал коммит
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
второй способ (добавил сложение)
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git add -u
|
||||
zakhar@MacBook-Air-Zakhar project % git commit -m "code: добавил сумму"
|
||||
[main 9187623] code: добавил сумму
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
третий способ (добавил вычитание)
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git commit -a -m "code: добавил вычитание"
|
||||
[main 0da39db] code: добавил вычитание
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
7. Работа с журналом репозитария:
|
||||
|
||||
Журнал репозитария показывает команда git log
|
||||
|
||||
commit 0da39dbb83f3eeb15f44677b948db2b50faff1c3 (HEAD -> main)
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:29:05 2024 +0300
|
||||
|
||||
code: добавил вычитание
|
||||
|
||||
commit 9187623fffbd9d8d82a9d70fafad0f425e4b6a07
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:24:41 2024 +0300
|
||||
|
||||
code: добавил сумму
|
||||
|
||||
commit 7bff90e5576e36cee72c12a34c127e030ae1dba1
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:19:54 2024 +0300
|
||||
|
||||
code: сделал коммит
|
||||
|
||||
commit d40b59d2d9176b12dfe10ad13cf9576f7f35b3f9
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:13:40 2024 +0300
|
||||
|
||||
code: заготовка программы:
|
||||
|
||||
|
||||
У команды git log много опций, например:
|
||||
• git log --stat показывает файлы, измененные в коммитах.
|
||||
• git log --oneline --decorate показывает коммиты компактно (--oneline), а также показывает ссылки, концы веток и тэги (--decorate).
|
||||
• git log --oneline --decorate --all --graph делает то же для всех веток (--all), причем коммиты отображаются в терминале в виде дерева (--graph).
|
||||
git log --stat показывает файлы, измененные в коммитах.
|
||||
zakhar@MacBook-Air-Zakhar main.dSYM % git log --stat
|
||||
commit 0da39dbb83f3eeb15f44677b948db2b50faff1c3 (HEAD -> main)
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:29:05 2024 +0300
|
||||
|
||||
code: добавил вычитание
|
||||
|
||||
main.cpp | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
commit 9187623fffbd9d8d82a9d70fafad0f425e4b6a07
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:24:41 2024 +0300
|
||||
|
||||
code: добавил сумму
|
||||
|
||||
main.cpp | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
commit 7bff90e5576e36cee72c12a34c127e030ae1dba1
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:19:54 2024 +0300
|
||||
|
||||
code: сделал коммит
|
||||
|
||||
main.cpp | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
commit d40b59d2d9176b12dfe10ad13cf9576f7f35b3f9
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:13:40 2024 +0300
|
||||
|
||||
code: заготовка программы
|
||||
|
||||
main.cpp | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
git log --oneline —decorate показывает коммиты компактно (--oneline), а также показывает ссылки, концы веток и тэги (--decorate)
|
||||
|
||||
zakhar@MacBook-Air-Zakhar main.dSYM % git log --oneline --decorate
|
||||
0da39db (HEAD -> main) code: добавил вычитание
|
||||
9187623 code: добавил сумму
|
||||
7bff90e code: сделал коммит
|
||||
d40b59d code: заготовка программы
|
||||
|
||||
git log --oneline --decorate --all —graph показывает коммиты компактно (--oneline), а также показывает ссылки, концы веток и тэги (--decorate); делает то же для всех веток (--all), причем коммиты отображаются в терминале в виде дерева (--graph).
|
||||
|
||||
zakhar@MacBook-Air-Zakhar main.dSYM % git log --oneline --decorate --all --graph
|
||||
* 0da39db (HEAD -> main) code: добавил вычитание
|
||||
* 9187623 code: добавил сумму
|
||||
* 7bff90e code: сделал коммит
|
||||
* d40b59d code: заготовка программы
|
||||
|
||||
Подробно опишите что показывает git log —-stat для последнего коммита
|
||||
фиолетовый последний коммит
|
||||
|
||||
|
||||
zakhar@MacBook-Air-Zakhar main.dSYM % git log --stat
|
||||
commit 0da39dbb83f3eeb15f44677b948db2b50faff1c3 (HEAD -> main)
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:29:05 2024 +0300
|
||||
code: добавил вычитание
|
||||
|
||||
Коммиты можно фильтровать по разным признакам:
|
||||
• git log -- main.cpp показывает затрагивающие main.cpp;
|
||||
• git log --grep "code:" показывает коммиты с code: в сообщении.
|
||||
zakhar@MacBook-Air-Zakhar main.dSYM % git log -- main.cpp
|
||||
zakhar@MacBook-Air-Zakhar main.dSYM % git log --grep "code:"
|
||||
commit 0da39dbb83f3eeb15f44677b948db2b50faff1c3 (HEAD -> main)
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:29:05 2024 +0300
|
||||
|
||||
code: добавил вычитание
|
||||
|
||||
commit 9187623fffbd9d8d82a9d70fafad0f425e4b6a07
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:24:41 2024 +0300
|
||||
|
||||
code: добавил сумму
|
||||
|
||||
commit 7bff90e5576e36cee72c12a34c127e030ae1dba1
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:19:54 2024 +0300
|
||||
|
||||
code: сделал коммит
|
||||
|
||||
commit d40b59d2d9176b12dfe10ad13cf9576f7f35b3f9
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:13:40 2024 +0300
|
||||
|
||||
code: заготовка программы
|
||||
|
||||
8. Просмотр коммитов.
|
||||
|
||||
git show HEAD (текущий)
|
||||
zakhar@MacBook-Air-Zakhar project % git show HEAD
|
||||
commit 0da39dbb83f3eeb15f44677b948db2b50faff1c3 (HEAD -> main)
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:29:05 2024 +0300
|
||||
|
||||
code: добавил вычитание
|
||||
|
||||
diff --git a/main.cpp b/main.cpp
|
||||
index 75f3e4e..cfab44d 100644
|
||||
--- a/main.cpp
|
||||
+++ b/main.cpp
|
||||
@@ -6,5 +6,6 @@ int main(){
|
||||
int a, b;
|
||||
cin >> a >> b;
|
||||
cout << "A + B = " << a + b << '\n';
|
||||
+ cout << "A - B = " << a - b << '\n';
|
||||
return 0;
|
||||
}
|
||||
\ No newline at end of file
|
||||
|
||||
|
||||
git show 0da39dbb83f3eeb15f44677b948db2b50faff1c3 (по хэшу)
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git show 0da39dbb83f3eeb15f44677b948db2b50faff1c3
|
||||
commit 0da39dbb83f3eeb15f44677b948db2b50faff1c3 (HEAD -> main)
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:29:05 2024 +0300
|
||||
|
||||
code: добавил вычитание
|
||||
|
||||
diff --git a/main.cpp b/main.cpp
|
||||
index 75f3e4e..cfab44d 100644
|
||||
--- a/main.cpp
|
||||
+++ b/main.cpp
|
||||
@@ -6,5 +6,6 @@ int main(){
|
||||
int a, b;
|
||||
cin >> a >> b;
|
||||
cout << "A + B = " << a + b << '\n';
|
||||
+ cout << "A - B = " << a - b << '\n';
|
||||
return 0;
|
||||
}
|
||||
\ No newline at end of file
|
||||
|
||||
Самостоятельно найти предпоследний коммит.
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git show HEAD~1
|
||||
commit 9187623fffbd9d8d82a9d70fafad0f425e4b6a07
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:24:41 2024 +0300
|
||||
|
||||
code: добавил сумму
|
||||
|
||||
diff --git a/main.cpp b/main.cpp
|
||||
index 9ea8342..75f3e4e 100644
|
||||
--- a/main.cpp
|
||||
+++ b/main.cpp
|
||||
@@ -5,5 +5,6 @@ int main(){
|
||||
cout << "Enter A and B: ";
|
||||
int a, b;
|
||||
cin >> a >> b;
|
||||
+ cout << "A + B = " << a + b << '\n';
|
||||
return 0;
|
||||
}
|
||||
\ No newline at end of file
|
||||
|
||||
9. Просмотр изменений
|
||||
|
||||
Добавим печать произведения чисел, но не станем пока делать коммит.
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git diff
|
||||
diff --git a/main.cpp b/main.cpp
|
||||
index cfab44d..378b4fa 100644
|
||||
--- a/main.cpp
|
||||
+++ b/main.cpp
|
||||
@@ -7,5 +7,6 @@ int main(){
|
||||
cin >> a >> b;
|
||||
cout << "A + B = " << a + b << '\n';
|
||||
cout << "A - B = " << a - b << '\n';
|
||||
+ cout << "A * B = " << a * b << '\n';
|
||||
return 0;
|
||||
}
|
||||
\ No newline at end of file
|
||||
|
||||
10. Изменения между самым первым коммитом и коммитом, добавляющим вывод разности.
|
||||
|
||||
Самостоятельно закоммитить вывод произведения:
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git commit -a -m "code: вывод произведения"
|
||||
[main 982fd62] code: вывод произведения
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
|
||||
|
||||
|
||||
необходимо отменить (откатить) этот коммит, то есть вернуться к предыдущему. Для этого воспользуемся командной git reset:
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git reset --hard HEAD~1
|
||||
HEAD is now at 0da39db code: добавил вычитание
|
||||
|
||||
(отсюда видно, что последним коммитом вновь стало добавление вычитания)
|
||||
|
||||
|
||||
Уберем изменения в main.cpp другим способом — откатив этот файл к состоянию в последнем коммите (HEAD):
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git checkout HEAD — main.cpp
|
||||
|
||||
убедимся с помощью команды git log
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git log
|
||||
commit 0da39dbb83f3eeb15f44677b948db2b50faff1c3 (HEAD -> main)
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:29:05 2024 +0300
|
||||
|
||||
code: добавил вычитание
|
||||
|
||||
commit 9187623fffbd9d8d82a9d70fafad0f425e4b6a07
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:24:41 2024 +0300
|
||||
|
||||
code: добавил сумму
|
||||
|
||||
commit 7bff90e5576e36cee72c12a34c127e030ae1dba1
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:19:54 2024 +0300
|
||||
|
||||
code: сделал коммит
|
||||
|
||||
commit d40b59d2d9176b12dfe10ad13cf9576f7f35b3f9
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:13:40 2024 +0300
|
||||
|
||||
code: заготовка программы
|
||||
|
||||
|
||||
11. Обмен кодом через удаленное хранилище
|
||||
|
||||
создадим пару ключей
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % ssh-keygen
|
||||
Generating public/private rsa key pair.
|
||||
Enter file in which to save the key (/Users/zakhar/.ssh/id_rsa):
|
||||
Created directory '/Users/zakhar/.ssh'.
|
||||
|
||||
Введем код-фразу
|
||||
|
||||
Enter passphrase (empty for no passphrase):
|
||||
Enter same passphrase again:
|
||||
Your identification has been saved in /Users/zakhar/.ssh/id_rsa
|
||||
Your public key has been saved in /Users/zakhar/.ssh/id_rsa.pub
|
||||
The key fingerprint is:
|
||||
SHA256:9qXB8Ul3g4E1bWZry+ECzlxMDfFSbP8FyJ5SvODnz28 zakhar@MacBook-Air-Zakhar.local
|
||||
The key's randomart image is:
|
||||
+---[RSA 3072]----+
|
||||
| ooB*. |
|
||||
| ..=.BO |
|
||||
| ..++=*++|
|
||||
| .o===.=+|
|
||||
| S *+* + =|
|
||||
| . . B.. +.|
|
||||
| o o. |
|
||||
| o E|
|
||||
| o.|
|
||||
+----[SHA256]-----+
|
||||
|
||||
запустим агента, чтобы постоянно не вводить код-фразу
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % eval $(ssh-agent -s)
|
||||
Agent pid 46873
|
||||
|
||||
Загрузить ключ (потребуется ввести пароль):
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % ssh-add
|
||||
Enter passphrase for /Users/zakhar/.ssh/id_rsa:
|
||||
Identity added: /Users/zakhar/.ssh/id_rsa (zakhar@MacBook-Air-Zakhar.local)
|
||||
|
||||
отобразить открытый ключ
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git push -u origin main
|
||||
Username for 'http://uit.mpei.ru': ButkoZV
|
||||
Password for 'http://ButkoZV@uit.mpei.ru':
|
||||
Enumerating objects: 12, done.
|
||||
Counting objects: 100% (12/12), done.
|
||||
Delta compression using up to 8 threads
|
||||
Compressing objects: 100% (8/8), done.
|
||||
Writing objects: 100% (12/12), 1.20 KiB | 1.20 MiB/s, done.
|
||||
Total 12 (delta 2), reused 0 (delta 0), pack-reused 0
|
||||
remote: . Processing 1 references
|
||||
remote: Processed 1 references in total
|
||||
To http://uit.mpei.ru/git/ButkoZV/cs-lab2.git
|
||||
* [new branch] main -> main
|
||||
branch 'main' set up to track 'origin/main'.
|
||||
|
||||
Получение проекта с сервера:
|
||||
|
||||
zakhar@MacBook-Air-Zakhar bob % git clone http://uit.mpei.ru/git/ButkoZV/cs-lab2.git project
|
||||
Cloning into 'project'...
|
||||
remote: Enumerating objects: 12, done.
|
||||
remote: Counting objects: 100% (12/12), done.
|
||||
remote: Compressing objects: 100% (8/8), done.
|
||||
remote: Total 12 (delta 2), reused 0 (delta 0), pack-reused 0
|
||||
Receiving objects: 100% (12/12), done.
|
||||
Resolving deltas: 100% (2/2), done.
|
||||
zakhar@MacBook-Air-Zakhar bob % ls -l
|
||||
total 0
|
||||
drwxr-xr-x 4 zakhar staff 128 10 апр 14:32 project
|
||||
zakhar@MacBook-Air-Zakhar bob % cd project
|
||||
zakhar@MacBook-Air-Zakhar project % ls -l
|
||||
total 8
|
||||
-rw-r--r-- 1 zakhar staff 215 10 апр 14:32 main.cpp
|
||||
|
||||
12. Самостоятельная работа с кодом
|
||||
|
||||
«На машине Боба» добавьте в программу печать произведения чисел и сделайте коммит. Просмотрите последний коммит и убедитесь, что он сделан от имени Боба.
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git add main.cpp
|
||||
zakhar@MacBook-Air-Zakhar project % git commit -m "code: добавил умножение"
|
||||
[main 8011a76] code: добавил умножение
|
||||
Committer: Zakhar <zakhar@MacBook-Air-Zakhar.local>
|
||||
Your name and email address were configured automatically based
|
||||
on your username and hostname. Please check that they are accurate.
|
||||
You can suppress this message by setting them explicitly. Run the
|
||||
following command and follow the instructions in your editor to edit
|
||||
your configuration file:
|
||||
|
||||
git config --global --edit
|
||||
|
||||
After doing this, you may fix the identity used for this commit with:
|
||||
|
||||
git commit --amend --reset-author
|
||||
|
||||
1 file changed, 1 insertion(+)
|
||||
zakhar@MacBook-Air-Zakhar project % git status
|
||||
On branch main
|
||||
Your branch is ahead of 'origin/main' by 1 commit.
|
||||
(use "git push" to publish your local commits)
|
||||
|
||||
nothing to commit, working tree clean
|
||||
zakhar@MacBook-Air-Zakhar project % git log
|
||||
commit 8011a764a559c066d93e366c18b763b7bfe25506 (HEAD -> main)
|
||||
Author: Zakhar <zakhar@MacBook-Air-Zakhar.local>
|
||||
Date: Wed Apr 10 16:40:31 2024 +0300
|
||||
|
||||
code: добавил умножение
|
||||
|
||||
commit 0da39dbb83f3eeb15f44677b948db2b50faff1c3 (origin/main, origin/HEAD)
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:29:05 2024 +0300
|
||||
|
||||
code: добавил вычитание
|
||||
|
||||
commit 9187623fffbd9d8d82a9d70fafad0f425e4b6a07
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:24:41 2024 +0300
|
||||
|
||||
code: добавил сумму
|
||||
|
||||
commit 7bff90e5576e36cee72c12a34c127e030ae1dba1
|
||||
Author: Alice (ButkoZV) <ButkoZV@mpei.ru>
|
||||
Date: Wed Mar 27 15:19:54 2024 +0300
|
||||
zakhar@MacBook-Air-Zakhar project % git push
|
||||
Enumerating objects: 5, done.
|
||||
Counting objects: 100% (5/5), done.
|
||||
Delta compression using up to 8 threads
|
||||
Compressing objects: 100% (2/2), done.
|
||||
Writing objects: 100% (3/3), 337 bytes | 337.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/ButkoZV/cs-lab2.git
|
||||
0da39db..8011a76 main -> main
|
||||
|
||||
Добавил деление в алисе, синхронизировал и проверил все репозиториии
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git fetch
|
||||
remote: Enumerating objects: 5, done.
|
||||
remote: Counting objects: 100% (5/5), done.
|
||||
remote: Compressing objects: 100% (2/2), done.
|
||||
remote: Total 3 (delta 1), reused 0 (delta 0), pack-reused 0
|
||||
Unpacking objects: 100% (3/3), 317 bytes | 105.00 KiB/s, done.
|
||||
From http://uit.mpei.ru/git/ButkoZV/cs-lab2
|
||||
0da39db..8011a76 main -> origin/main
|
||||
zakhar@MacBook-Air-Zakhar project % git log --oneline --decorate --all --graph
|
||||
* 8011a76 (origin/main) code: добавил умножение
|
||||
* 0da39db (HEAD -> main) code: добавил вычитание
|
||||
* 9187623 code: добавил сумму
|
||||
* 7bff90e code: сделал коммит
|
||||
* d40b59d code: заготовка программы
|
||||
zakhar@MacBook-Air-Zakhar project % git pull --ff-only
|
||||
Updating 0da39db..8011a76
|
||||
Fast-forward
|
||||
main.cpp | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
zakhar@MacBook-Air-Zakhar project % git log --oneline --decorate --all --graph
|
||||
* 8011a76 (HEAD -> main, origin/main) code: добавил умножение
|
||||
* 0da39db code: добавил вычитание
|
||||
* 9187623 code: добавил сумму
|
||||
* 7bff90e code: сделал коммит
|
||||
* d40b59d code: заготовка программы
|
||||
|
||||
Заклонировал
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git clone http://uit.mpei.ru/git/ButkoZV/cs-lab2.git project
|
||||
Cloning into 'project'...
|
||||
remote: Enumerating objects: 15, done.
|
||||
remote: Counting objects: 100% (15/15), done.
|
||||
remote: Compressing objects: 100% (10/10), done.
|
||||
remote: Total 15 (delta 3), reused 0 (delta 0), pack-reused 0
|
||||
Receiving objects: 100% (15/15), done.
|
||||
Resolving deltas: 100% (3/3), done.
|
||||
zakhar@MacBook-Air-Zakhar project % git status
|
||||
On branch main
|
||||
Your branch is up to date with 'origin/main'.
|
||||
|
||||
Untracked files:
|
||||
(use "git add <file>..." to include in what will be committed)
|
||||
.DS_Store
|
||||
.gitignore
|
||||
main
|
||||
main.dSYM/
|
||||
project/
|
||||
|
||||
nothing added to commit but untracked files present (use "git add" to track)
|
||||
zakhar@MacBook-Air-Zakhar project % git fetch
|
||||
zakhar@MacBook-Air-Zakhar project % git pull --ff-only
|
||||
Already up to date.
|
||||
|
||||
Проверил состояние кода
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % cat main.cpp
|
||||
#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';
|
||||
cout << "A * B = " << a * b << '\n';
|
||||
return 0;
|
||||
|
||||
|
||||
}% zakhar@MacBook-Air-Zakhar project % add main.cpp
|
||||
zsh: command not found: add
|
||||
zakhar@MacBook-Air-Zakhar project % git add main.cpp
|
||||
zakhar@MacBook-Air-Zakhar project % git commit -m "code: добавил деление"
|
||||
[main 3fa5eee] code: добавил деление
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
zakhar@MacBook-Air-Zakhar project % git push
|
||||
Enumerating objects: 5, done.
|
||||
Counting objects: 100% (5/5), done.
|
||||
Delta compression using up to 8 threads
|
||||
Compressing objects: 100% (2/2), done.
|
||||
Writing objects: 100% (3/3), 351 bytes | 351.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/ButkoZV/cs-lab2.git
|
||||
8011a76..3fa5eee main -> main
|
||||
zakhar@MacBook-Air-Zakhar project % cat main.cpp
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
//alice
|
||||
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';
|
||||
cout << "A * B = " << a * b << '\n';
|
||||
cout << "A / B = " << a / b << '\n';
|
||||
return 0;
|
||||
}
|
||||
|
||||
13. Предположим, Алиса решает добавить в программу печать максимума из чисел, а Боб — минимума.
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git push
|
||||
Enumerating objects: 5, done.
|
||||
Counting objects: 100% (5/5), done.
|
||||
Delta compression using up to 8 threads
|
||||
Compressing objects: 100% (2/2), done.
|
||||
Writing objects: 100% (3/3), 393 bytes | 393.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/ButkoZV/cs-lab2.git
|
||||
3fa5eee..b0d09c9 main -> main
|
||||
zakhar@MacBook-Air-Zakhar project % git log --oneline --decorate --all --graph
|
||||
* b0d09c9 (HEAD -> main, origin/main) code: добавил вывод максимума
|
||||
* 3fa5eee code: добавил деление
|
||||
* 8011a76 code: добавил умножение
|
||||
* 0da39db code: добавил вычитание
|
||||
* 9187623 code: добавил сумму
|
||||
* 7bff90e code: сделал коммит
|
||||
* d40b59d code: заготовка программы
|
||||
|
||||
аналогично с бобом
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git push
|
||||
Enumerating objects: 5, done.
|
||||
Counting objects: 100% (5/5), done.
|
||||
Delta compression using up to 8 threads
|
||||
Compressing objects: 100% (2/2), done.
|
||||
Writing objects: 100% (3/3), 379 bytes | 379.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/ButkoZV/cs-lab2.git
|
||||
b0d09c9..c449bc7 main -> main
|
||||
zakhar@MacBook-Air-Zakhar project % git log --oneline --decorate --all --graph
|
||||
* c449bc7 (HEAD -> main, origin/main, origin/HEAD) code: добавил вывод минимума
|
||||
* b0d09c9 code: добавил вывод максимума
|
||||
* 3fa5eee code: добавил деление
|
||||
* 8011a76 code: добавил умножение
|
||||
* 0da39db code: добавил вычитание
|
||||
* 9187623 code: добавил сумму
|
||||
* 7bff90e code: сделал коммит
|
||||
* d40b59d code: заготовка программы
|
||||
|
||||
Однако эта команда завершается с ошибкой, сообщающей о конфликте в main.cpp. Просмотрите состояние хранилища и поясните в отчете.
|
||||
zakhar@МacBook-Air-Zakhar project % cat main.cpp
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
//alice
|
||||
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';
|
||||
cout << "A * B = " << a * b << '\n';
|
||||
cout << "A / B = " << a / b << '\n';
|
||||
<<<<<<< HEAD
|
||||
if (a < b)
|
||||
{
|
||||
cout << " max element is " << b;
|
||||
}
|
||||
else
|
||||
{
|
||||
cout << " max element is " << a;
|
||||
}
|
||||
=======
|
||||
if (a > b)
|
||||
{
|
||||
cout << " min element is " << b;
|
||||
}
|
||||
else
|
||||
{
|
||||
cout << " min element is " << a;
|
||||
};
|
||||
>>>>>>> 2ebf7dc (code: добавил вывод минимума)
|
||||
return 0;
|
||||
}
|
||||
Вручную исправим ошибку и отправим на сервер.
|
||||
zakhar@MacBook-Air-Zakhar project % nano main.cpp
|
||||
zakhar@MacBook-Air-Zakhar project % cat main.cpp
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
//alice
|
||||
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';
|
||||
cout << "A * B = " << a * b << '\n';
|
||||
cout << "A / B = " << a / b << '\n';
|
||||
if (a < b)
|
||||
{
|
||||
cout << " max element is " << b;
|
||||
}
|
||||
else
|
||||
{
|
||||
cout << " max element is " << a;
|
||||
}
|
||||
if (a > b)
|
||||
{
|
||||
cout << " min element is " << b;
|
||||
}
|
||||
else
|
||||
{
|
||||
cout << " min element is " << a;
|
||||
};
|
||||
return 0;
|
||||
}
|
||||
zakhar@MacBook-Air-Zakhar project % git add main.cpp
|
||||
zakhar@MacBook-Air-Zakhar project % git status
|
||||
interactive rebase in progress; onto b0d09c9
|
||||
Last command done (1 command done):
|
||||
pick 2ebf7dc code: добавил вывод минимума
|
||||
No commands remaining.
|
||||
You are currently rebasing branch 'main' on 'b0d09c9'.
|
||||
(all conflicts fixed: run "git rebase --continue")
|
||||
|
||||
Changes to be committed:
|
||||
(use "git restore --staged <file>..." to unstage)
|
||||
modified: main.cpp
|
||||
|
||||
Untracked files:
|
||||
(use "git add <file>..." to include in what will be committed)
|
||||
main
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git rebase --continue
|
||||
[detached HEAD 36d0e5d] code: добавил вывод минимума(rebase)
|
||||
Committer: Zakhar <zakhar@MacBook-Air-Zakhar.local>
|
||||
Your name and email address were configured automatically based
|
||||
on your username and hostname. Please check that they are accurate.
|
||||
You can suppress this message by setting them explicitly:
|
||||
|
||||
git config --global user.name "Your Name"
|
||||
git config --global user.email you@example.com
|
||||
|
||||
After doing this, you may fix the identity used for this commit with:
|
||||
|
||||
git commit --amend --reset-author
|
||||
|
||||
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||
Successfully rebased and updated refs/heads/main.
|
||||
zakhar@MacBook-Air-Zakhar project % git log --oneline --decorate --all --graph
|
||||
* 36d0e5d (HEAD -> main) code: добавил вывод минимума(rebase)
|
||||
* b0d09c9 (origin/main, origin/HEAD) code: добавил вывод максимума
|
||||
* 3fa5eee code: добавил деление
|
||||
* 8011a76 code: добавил умножение
|
||||
* 0da39db code: добавил вычитание
|
||||
* 9187623 code: добавил сумму
|
||||
* 7bff90e code: сделал коммит
|
||||
* d40b59d code: заготовка программы
|
||||
zakhar@MacBook-Air-Zakhar project % git push
|
||||
Enumerating objects: 5, done.
|
||||
Counting objects: 100% (5/5), done.
|
||||
Delta compression using up to 8 threads
|
||||
Compressing objects: 100% (2/2), done.
|
||||
Writing objects: 100% (3/3), 392 bytes | 392.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/ButkoZV/cs-lab2.git
|
||||
b0d09c9..36d0e5d main -> main
|
||||
|
||||
14. Использование веток.
|
||||
Создайте ветку double и переключитесь на нее.
|
||||
zakhar@MacBook-Air-Zakhar project % git branch double
|
||||
zakhar@MacBook-Air-Zakhar project % git checkout double
|
||||
Switched to branch 'double'
|
||||
|
||||
измените тип данных на double
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % nano main.cpp
|
||||
zakhar@MacBook-Air-Zakhar project % cat main.cpp
|
||||
#include <iostream>
|
||||
using namespace std;
|
||||
//alice
|
||||
int main(){
|
||||
cout << "Enter A and B: ";
|
||||
double a, b;
|
||||
cin >> a >> b;
|
||||
cout << "A + B = " << a + b << '\n';
|
||||
cout << "A - B = " << a - b << '\n';
|
||||
cout << "A * B = " << a * b << '\n';
|
||||
cout << "A / B = " << a / b << '\n';
|
||||
if (a < b)
|
||||
{
|
||||
cout << " max element is " << b;
|
||||
}
|
||||
else
|
||||
{
|
||||
cout << " max element is " << a;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
опереключитесь на ветку main, сделайте синхронизацию и слияние веток
|
||||
|
||||
zakhar@MacBook-Air-Zakhar project % git checkout main
|
||||
Already on 'main'
|
||||
Your branch is up to date with 'origin/main'.
|
||||
zakhar@MacBook-Air-Zakhar project % git merge double
|
||||
Auto-merging main.cpp
|
||||
Merge made by the 'ort' strategy.
|
||||
main.cpp | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
zakhar@MacBook-Air-Zakhar project % git log --oneline --decorate --all --graph
|
||||
* 7afa177 (HEAD -> main) Merge branch 'double' слияние веток
|
||||
|\
|
||||
| * f12b299 (double) code: добавил double
|
||||
* | 36d0e5d (origin/main) code: добавил вывод минимума(rebase)
|
||||
|/
|
||||
* b0d09c9 code: добавил вывод максимума
|
||||
* 3fa5eee code: добавил деление
|
||||
* 8011a76 code: добавил умножение
|
||||
* 0da39db code: добавил вычитание
|
||||
* 9187623 code: добавил сумму
|
||||
* 7bff90e code: сделал коммит
|
||||
* d40b59d code: заготовка программы
|
||||
Ссылка в новой задаче
Block a user