git/README.md

120 lines
3.4 KiB
Markdown
Raw Normal View History

2024-06-30 22:48:32 +02:00
### Instalacija i podešavanje GIT-a sa radom na GiTea serveru
---
Od programa nam je potrebno:
2024-06-30 22:48:32 +02:00
- [Git](https://git-scm.com/download/win)
- [gpg4win](https://www.gpg4win.org/)
- [GitExtensions](https://gitextensions.github.io/)
- [GitKraken](https://gitea.vm-net.in.rs/Dasko/Git/src/branch/master/Instalacije/GitKraken%20Client%20On-Premise%20Serverless%209.13.0%20x64.zip)
2024-06-30 22:48:32 +02:00
U folderu ***Instalacije*** se nalaze svi potrbni programi koje treba instalirati.
Instalirati gore sve navedene programe.
#### Podešavanje GIT-a
---
Instalirati GIT a zatim otvoriti komandu CMD i u njoj uneti sledeće
```console
git config --global user.name "Ime Prezime"
git config --global user.email email@example.com
git config --global init.defaultBranch main
git config --global credential.helper store
```
#### Kreiranje SSH kjluča
---
Potrebno je kreirati SSH ključ na sledeći način tako što pokrenemo PowerShell kao administrator i unesemo sledeće:
```shell
ssh-keygen -t ed25519 -C "your_email@example.com"
```
Unosimo šta se traži od nas.
U PowerShell kao admin kucamo sledeće:
```shell
Get-Service -Name ssh-agent | Set-Service -StartupType Manual
Start-Service ssh-agent
ssh-add C:/Users/Korisnik/naš_fajl_tajni
```
- Ovo možemo izostaviti
2024-06-30 22:48:32 +02:00
U folderu C:\Users\Korisnik u .profile ili .bashrc unosimo sledeće da bi se sshagent startovao kad koriszimo git:
```bash
env=~/.ssh/agent.env
agent_load_env () { test -f "$env" && . "$env" >| /dev/null ; }
agent_start () {
(umask 077; ssh-agent >| "$env")
. "$env" >| /dev/null ; }
agent_load_env
# agent_run_state: 0=agent running w/ key; 1=agent w/o key; 2=agent not running
agent_run_state=$(ssh-add -l >| /dev/null 2>&1; echo $?)
if [ ! "$SSH_AUTH_SOCK" ] || [ $agent_run_state = 2 ]; then
agent_start
ssh-add
elif [ "$SSH_AUTH_SOCK" ] && [ $agent_run_state = 1 ]; then
ssh-add
fi
unset env
```
agentu dodajemo ključ
```powershell
ssh-add c:/Users/Korisnik/.ssh/Tajni_Ključ
```
U Gitea je potrebno isto dodati SSH ključ na sledeći način
U tekst editoru otvorimo javni ključ i njega koji izgleda slično kao
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILvyyoqmH+ytTtiHXMVY5S3ax6t+rEjVuHsyn33ydKiX email@gmail.com
kopiramo u GiTea, a zatim kliknemo na `Verify`.
Otvorimo GitBash na folder `C:/Users/Korisnik/.ssh` i u GitBash-u kopirati iz GiTea-a sledeće
echo -n 'Token_koji_smo_dobili' | ssh-keygen -Y sign -n gitea -f C:/Users/Korisnik/.ssh/Javni_ključ
#### Kreiranje GPG ključa
---
Komandom u PowerShell-u
```PowerShell
gpg --full-generate-key
```
ili programom Kleopatra kreiramo kluč.
```PowerShell
gpg --list-secret-keys --keyid-format=long
```
listamo ključ.
```console
gpg --list-secret-keys --keyid-format=long
/Users/hubot/.gnupg/secring.gpg
------------------------------------
sec 4096R/3AA5C34371567BD2 2016-03-10 [expires: 2017-03-10]
uid Hubot <hubot@example.com>
ssb 4096R/4BB6D45482678BE3 2016-03-10
```
u ovom slučaju to je `3AA5C34371567BD2`
```shell
gpg --armor --export 3AA5C34371567BD2
```
2024-06-30 22:48:32 +02:00
dobijamo ključ koji treba da kopiramo u GiTea koji počinje i završava se
2024-06-30 22:48:32 +02:00
`-----BEGIN PGP PUBLIC KEY BLOCK-----`
2024-06-30 22:48:32 +02:00
`-----END PGP PUBLIC KEY BLOCK-----`.
2024-06-30 22:48:32 +02:00
nakon dodavanja ključa u Gitea, potrebno je verifikovati ključ tako što kliknemo na `Verify`,
Kopiramo u `Clipboard`token koji smo dobili a zatim u program Kleopatra
`menu bar > Tools > Clipboard > OpenPGP-Sign`
dobijamo isto u `Clipboard` poruku koju kopiramo u GiTea.
2024-06-30 22:48:32 +02:00