Compare commits

...

8 Commits

Author SHA1 Message Date
a87223064d ssdfdsf
Signed-off-by: ARNik <r.anikeev@gmail.com>
2024-11-07 04:00:27 +03:00
106a1ce495 update 2024-11-07 03:58:55 +03:00
277c6ca338 update 2024-11-07 03:58:33 +03:00
f039d902e8 update 2024-11-07 03:49:55 +03:00
1872e9a347 update 2024-11-07 03:47:06 +03:00
55b435373b update 2024-11-07 03:46:22 +03:00
b302382420 update 2024-11-07 03:45:16 +03:00
edcf971b4f ssh-sign start 2024-11-07 02:20:51 +03:00
2 changed files with 57 additions and 0 deletions

View File

@@ -4,6 +4,7 @@
* [Установка GIT в windows](src/GIT-install-win.md) * [Установка GIT в windows](src/GIT-install-win.md)
* [Конфигурация GIT](src/GIT-config.md) * [Конфигурация GIT](src/GIT-config.md)
* [SSH авторизация по ключам](src/SSH-key-auth-win.md) * [SSH авторизация по ключам](src/SSH-key-auth-win.md)
* [SSH подпись](src/GIT-SSH-sign.md)
* [Установка TortoiseGit](src/TortoiseGit.md) * [Установка TortoiseGit](src/TortoiseGit.md)
* [GIT в Bash](src/GIT-Bash.md) * [GIT в Bash](src/GIT-Bash.md)
* [VS Code](src/VS-Code.md) * [VS Code](src/VS-Code.md)

56
src/GIT-SSH-sign.md Normal file
View File

@@ -0,0 +1,56 @@
# SSH подпись
Как мы знаем в GIT можно указать любое имя пользователя и почтовый адрес.
Для достоверной идентификации автора существует возможность цифровой подписи коммитов.
Подписывать коммиты будем тем же самым ключом SSH который мы использовали ранее для работы с удаленными репозиториями.
<!-- https://dev.to/ccoveille/git-the-complete-guide-to-sign-your-commits-with-an-ssh-key-35bg -->
<!-- https://developer.1password.com/docs/ssh/git-commit-signing/ -->
Чтобы верифицировать подписи локально, нужно создать файл с доверенными ключами...
```
echo "$(git config --get user.name) $(cat ~/.ssh/id_rsa.pub)" >> ~/.ssh/allowed_signers
```
Добавляем соответствующие настройки в GIT:
```
git config --global gpg.format ssh # Включаем SSH для подписи
git config --global user.signingkey "~/.ssh/id_rsa.pub" # Добавляем открытый ключ
git config --global gpg.ssh.allowedSignersFile "~/.ssh/allowed_signers" # Добавляем файл доверенных подписей
git config --global commit.gpgsign true # Автоподпись для коммитов
git config --global tag.gpgsign true # Автоподпись для тэгов
```
Таким образом мой файл .gitconfig теперь выглядит так:
```
[user]
name = ARNik
email = r.anikeev@gmail.com
signingkey = ~/.ssh/id_rsa.pub
[color]
ui = true
[core]
quotepath = off # отображение русских имен файлов
[alias]
ll = log --oneline --graph --decorate --all
st = status --short
co = checkout
br = branch
ct = commit
lg = log --graph --all\
--pretty=format:'%Cred%h%Creset -%C(auto)%d %Creset%s %Cgreen(%cr) %C(bold blue)<%an>%Creset'
[gpg]
format = ssh
[gpg "ssh"]
allowedSignersFile = ~/.ssh/allowed_signers
[commit]
gpgsign = true
[tag]
gpgsign = true
```