====== 2.1 Kloniranje GitHub Repozitorija ======
Ova stranica objašnjava kako preuzeti OpenSSL izvorni kod s GitHuba.
----
===== Što je Git? =====
**Git** je sustav za kontrolu verzija. Sprema:
* Sve verzije projekta
* Tko je što i kada promijenio
* "Tagove" za važne verzije (npr. v3.6.0)
**GitHub** je web stranica koja hostira Git repozitorije.
----
===== Priprema Strukture Projekta =====
Prvo stvaramo smislenu strukturu mapa:
# Stvorite glavnu mapu
mkdir D:\Projects\openssl-3.6.0
# Stvorite podmape
mkdir D:\Projects\openssl-3.6.0\src # Ovdje dolazi izvorni kod
mkdir D:\Projects\openssl-3.6.0\bin # Ovdje dolaze kompilirane datoteke
Rezultat:
D:\Projects\openssl-3.6.0\
├── src\ # OpenSSL izvorni kod (s GitHuba)
└── bin\ # Odredište za kompilirane binarne datoteke
----
===== Kloniranje OpenSSL-a =====
==== Opcija A: Samo tag v3.6.0 (preporučeno) ====
cd D:\Projects\openssl-3.6.0
git clone --depth 1 --branch openssl-3.6.0 https://github.com/openssl/openssl.git src
**Objašnjenje parametara:**
| Parametar | Značenje |
|-----------|----------|
| ''--depth 1'' | Samo najnovija verzija (štedi ~500 MB!) |
| ''--branch openssl-3.6.0'' | Tag za verziju 3.6.0 |
| ''src'' | Odredišna mapa |
==== Opcija B: Kompletan repozitorij ====
Ako želite isprobati različite verzije:
cd D:\Projects\openssl-3.6.0
git clone https://github.com/openssl/openssl.git src
cd src
git checkout openssl-3.6.0
Kompletan repozitorij je oko 500 MB. S ''--depth 1'' samo ~50 MB.
----
===== Provjera Verzije =====
cd D:\Projects\openssl-3.6.0\src
# Prikaži trenutni tag
git describe --tags
# Očekivani izlaz: openssl-3.6.0
# Ili: Prikaži commit info
git log -1 --oneline
----
===== Česti Problemi =====
==== "git is not recognized" ====
Git nije instaliran ili nije u PATH-u:
winget install Git.Git
Nakon instalacije: Otvorite novi terminal.
==== Firewall blokira GitHub ====
Ako ste iza korporativnog firewall-a:
# Postavite proxy (ako je potrebno)
git config --global http.proxy http://proxy.firma.hr:8080
git config --global https.proxy http://proxy.firma.hr:8080
----
===== Nastavite na =====
* [[.:build:start|3. Kompilacija]]
----
//Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional//