Родитель
cf88595709
Сommit
833d6d67a3
@ -0,0 +1,269 @@
|
||||
ls - посмотреть файлы в каталоге
|
||||
mkdir <<>> - добавить папку с именем
|
||||
cd <<>> - перейти по каталогу на уровень ниже в папку
|
||||
cd .. - перейти по каталогу на уровень выше
|
||||
git init - инициализация репозитория
|
||||
git branch -m main - смена имени ветки на main
|
||||
ls -A - посмотреть скрытое в папке
|
||||
|
||||
Git имеет три вида настроек:
|
||||
Системные (для всех пользователей),
|
||||
Пользовательские (для одного пользователя),
|
||||
Локальные (для отдельного репозитария)
|
||||
|
||||
git config user.name 'Alice (DmitrievDK)' выбор имени
|
||||
git config user.email 'DmitriyevDK@mpei.ru' выбор почты
|
||||
|
||||
git status - посмотреть состояние рабочей копии
|
||||
-------------
|
||||
On branch main - смотрим ветку main
|
||||
|
||||
No commits yet - еще нет коммитов
|
||||
|
||||
Untracked files: - неотслеживаемые файлы
|
||||
(use "git add <file>..." to include in what will be committed) - используйте "git add <file>...", чтобы указать, что будет зафиксировано
|
||||
desktop.ini
|
||||
main.cpp
|
||||
project.cbp
|
||||
|
||||
nothing added to commit but untracked files present (use "git add" to track)
|
||||
------------
|
||||
git add main.cpp - добавляем main.cpp в индекс, то есть в набор изменений, который войдет в очередной коммит
|
||||
------------
|
||||
$ 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)
|
||||
desktop.ini
|
||||
project.cbp
|
||||
-----------
|
||||
|
||||
code: заготовка программы — изменен код (а не документация, например)
|
||||
build: update CMake version — коммит относится к сборке
|
||||
обрабатывает пустой массив | fixes #1234 — исправляет ошибку № 1234
|
||||
timer: учет високосных лет #4321 — доработка таймера по задаче № 4321
|
||||
WIP: (work in progress). (который временный/незаконченный)
|
||||
правила описания коммитов
|
||||
|
||||
несколько способов коммита
|
||||
1. когда один файл
|
||||
git add main.cpp
|
||||
git commit -m "..."
|
||||
|
||||
2. когда много файлов
|
||||
git add -u
|
||||
git commit -m "..."
|
||||
|
||||
3. Добавить все изменения в индекс и сделать коммит в один шаг:
|
||||
git commit -a -m "..."
|
||||
|
||||
git log - показать журнал репозитария
|
||||
|
||||
------
|
||||
У команды git log много опций, например:
|
||||
|
||||
git log --stat показывает файлы, измененные в коммитах.
|
||||
git log --oneline --decorate показывает коммиты компактно (--oneline), а также показывает ссылки, концы веток и тэги (--decorate).
|
||||
git log --oneline --decorate --all --graph делает то же для всех веток (--all), причем коммиты отображаются в терминале в виде дерева (--graph).
|
||||
------
|
||||
|
||||
------
|
||||
git log --stat показывает файлы, измененные в коммитах.
|
||||
|
||||
$ git log --stat
|
||||
commit 4bfae3cbed75c9d1f51c862ce160500708cc0606 (HEAD -> main)
|
||||
Author: Alice (DmitrievDK) <DmitriyevDK@mpei.ru>
|
||||
Date: Mon Jun 5 03:24:31 2023 +0300
|
||||
|
||||
git
|
||||
|
||||
.gitignore | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
commit debe61dfd67eca86a15387c7b35c83d24f62edf8
|
||||
Author: Alice (DmitrievDK) <DmitriyevDK@mpei.ru>
|
||||
Date: Mon Jun 5 03:16:43 2023 +0300
|
||||
|
||||
code: изменена сумма и разность на нормальны
|
||||
|
||||
main.cpp | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
commit 92474770044a065395b4e6ca5f3ee7dcc808cec9
|
||||
Author: Alice (DmitrievDK) <DmitriyevDK@mpei.ru>
|
||||
Date: Mon Jun 5 03:15:04 2023 +0300
|
||||
|
||||
code: добавлена разность
|
||||
------
|
||||
|
||||
------
|
||||
git log --oneline --decorate показывает коммиты компактно (--oneline), а также показывает ссылки, концы веток и тэги (--decorate
|
||||
|
||||
$ git log --oneline --decorate
|
||||
4bfae3c (HEAD -> main) git
|
||||
debe61d code: изменена сумма и разность на нормальны
|
||||
9247477 code: добавлена разность
|
||||
f5b62a4 code: заготовка программы — изменен код
|
||||
a5f4d8f build: добавлен файл проекта
|
||||
3b3f82e code: заготовка программы
|
||||
------
|
||||
|
||||
------
|
||||
$ git log --oneline --decorate --all --graph
|
||||
* 4bfae3c (HEAD -> main) git
|
||||
* debe61d code: изменена сумма и разность на нормальны
|
||||
* 9247477 code: добавлена разность
|
||||
* f5b62a4 code: заготовка программы — изменен код
|
||||
* a5f4d8f build: добавлен файл проекта
|
||||
* 3b3f82e code: заготовка программы
|
||||
------
|
||||
git show <refspec> просмотр отдельного коммита (refspec - хеш коммита)
|
||||
|
||||
просмотр последнего коммита тремя разными способами
|
||||
git show HEAD (текущий)
|
||||
git show main (по имени ветви)
|
||||
git show d2e8af (по хэшу нужного коммита)
|
||||
------
|
||||
$ git show HEAD
|
||||
commit 4bfae3cbed75c9d1f51c862ce160500708cc0606 (HEAD -> main)
|
||||
Author: Alice (DmitrievDK) <DmitriyevDK@mpei.ru>
|
||||
Date: Mon Jun 5 03:24:31 2023 +0300
|
||||
|
||||
git
|
||||
|
||||
diff --git a/.gitignore b/.gitignore
|
||||
new file mode 100644
|
||||
index 0000000..d85abef
|
||||
--- /dev/null
|
||||
+++ b/.gitignore
|
||||
@@ -0,0 +1,3 @@
|
||||
+/bin
|
||||
+/obj
|
||||
+/*.layout
|
||||
|
||||
usr@dan128B MINGW64 ~/Desktop/lab02/alice/project (main)
|
||||
------
|
||||
|
||||
git diff - просмотр изменения рабочей копии
|
||||
|
||||
------
|
||||
$ git diff
|
||||
diff --git a/main.cpp b/main.cpp
|
||||
index c3d4222..b685e5e 100644
|
||||
--- a/main.cpp
|
||||
+++ b/main.cpp
|
||||
@@ -8,5 +8,7 @@ cout << "Enter A and B: ";
|
||||
int a, b;
|
||||
cin >> a >> b;
|
||||
cout << "A + B = " << a + b << '\n'
|
||||
- << "A - B = " << a - b << '\n'; - убрали строчку
|
||||
+ << "A - B = " << a - b << '\n' -добавили строчку
|
||||
+ << "A * B = " << a * b << '\n'; -добавили строчку
|
||||
}
|
||||
------
|
||||
|
||||
git diff HEAD~2 разница между последним и коммитом старее на две версии
|
||||
git diff HEAD~2 HEAD также, но так можно задать разные коммиты
|
||||
|
||||
git reset --hard HEAD~1 - откат версии на 1 назад
|
||||
|
||||
git checkout HEAD -- main.cpp - откат файла к последнему коммиту
|
||||
|
||||
ssh-keygen создать пару ключей
|
||||
|
||||
eval $(ssh-agent -s) запустить агента ключей
|
||||
|
||||
ssh-add загрузка ключа
|
||||
|
||||
cat ~/.ssh/id_rsa.pub отобразить открытый ключ
|
||||
мой вывод: ------
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDy3rV3tesiBvsEgT+ckOMe6usSDho/k6G8oDna/HWpMyvrGXwNq8tHAp8baMqID2fo6WVzk86iYS4NobF8Coo3oYt6LV9nCC9fvk/uavj6AIa7N3M9KEJSfei2q51/HFVr7b/5WbB0F28Tz/IHzbe655wlPkF2NWWDvaHKul6OzNmylwAnHT4L+kiwX6QMDHB+FiMCxwvLkt7avkn3h/NQiyvq3mH7pk3Hkpr5UMI3tFvWEj062nE9fo5YgNqAziHKQLp4bGXRo204AMSHBMZ6Ia/eN4GrmiHUWVvT6nnwDjnw7g5TjzT5ptMx6693apBBF3xYKurTB1E48qYf+aJAFfa06yaHcYEz1LmjpG4kBC12s2IIAZbiR3jk5OEo/7zSkVryZt+R+523zefnzNblwFWFgDrYOt/2e7urXObh+1Wr0bRLaahWyxsTT+ADJ5Eyk0XpUBK/9mG6db+B/0QQ6UFcv3f7KaAH/hF3hi7sRS7J+2cGmOtiGhEGqhbpqY0= usr@dan128B
|
||||
------
|
||||
git clone <адрес> <каталог>
|
||||
|
||||
git remote -v
|
||||
|
||||
git remote add
|
||||
|
||||
git push отправить коммит на сервер
|
||||
|
||||
git fetch получить коммит с сервера
|
||||
|
||||
------
|
||||
$ git rebase origin/main
|
||||
Auto-merging main.cpp - автообъединение main.cpp
|
||||
CONFLICT (content): Merge conflict in main.cpp - конфликт слияния в main.cpp
|
||||
error: could not apply 9303f0f... code: добавили минимум - ошибка не удалось применить
|
||||
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 9303f0f... code: добавили минимум
|
||||
------
|
||||
|
||||
после git add main.cpp / git rebase --continue
|
||||
------
|
||||
code: добавили минимум
|
||||
|
||||
# Please enter the commit message for your changes. Lines starting
|
||||
# with '#' will be ignored, and an empty message aborts the commit.
|
||||
#
|
||||
# interactive rebase in progress; onto 4d82c00
|
||||
# Last command done (1 command done):
|
||||
# pick 9303f0f code: добавили минимум
|
||||
# No commands remaining.
|
||||
# You are currently rebasing branch 'main' on '4d82c00'.
|
||||
#
|
||||
# Changes to be committed:
|
||||
# modified: main.cpp
|
||||
#
|
||||
# Untracked files:
|
||||
# project.layout
|
||||
#
|
||||
~
|
||||
~
|
||||
~
|
||||
~
|
||||
~
|
||||
.git/COMMIT_EDITMSG [unix] (06:30 05/06/2023) 17,1 All
|
||||
"~/Desktop/lab02/bob/project/.git/COMMIT_EDITMSG" [unix] 17L, 491B
|
||||
------
|
||||
|
||||
git branch double - создание ветки
|
||||
|
||||
git checkout double - переключение на ветку
|
||||
|
||||
git checkout -b double (первые две команды вместе)
|
||||
|
||||
git merge double - слить ветку double в main
|
||||
|
||||
------
|
||||
$ git merge double
|
||||
Already up to date. (что-то пошло не так)
|
||||
|
||||
|
||||
------
|
||||
------
|
||||
------
|
||||
------
|
||||
------
|
||||
------
|
||||
------
|
||||
------
|
||||
------
|
||||
------
|
||||
------
|
||||
------
|
||||
------
|
||||
------
|
||||
|
||||
|
||||
|
||||
|
Загрузка…
Ссылка в новой задаче