Git: Repository

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
m (Podrobnější komentář ke git pull před commitem vypuštěn - měl bych pracovat na vlastní větvi.)
(Opraveno na přihlašování pomocí SSH.)
Řádka 4: Řádka 4:
 
* Git je jedním z nejoblíbenějších verzovacích systémů současnosti.
 
* Git je jedním z nejoblíbenějších verzovacích systémů současnosti.
 
* Více o Gitu se dozvíte na stránce [[Git]].
 
* Více o Gitu se dozvíte na stránce [[Git]].
* Zde se budeme zabývat prací se vzdáleným repozitářem.
+
* Zde se budeme zabývat prací se vzdáleným repozitářem (zejména na serveru [https://www.github.com Github.com]).
  
  
Řádka 11: Řádka 11:
 
* Váš Git umí stáhnout z GitHubu aktuální verzi a posléze nahrát zpět provedené změny.
 
* Váš Git umí stáhnout z GitHubu aktuální verzi a posléze nahrát zpět provedené změny.
 
* Obdobných serverů existuje více, GitHub patří k nejznámnějším.
 
* Obdobných serverů existuje více, GitHub patří k nejznámnějším.
 +
 +
 +
== Nastavení SSH klíče ==
 +
* Doporučeným způsobem ověřování identity je dnes SSH klíč.
 +
* K vygenerování klíče použijte ''Git Bash'', který se nainstaloval při instalaci Gitu na váš počítač.
 +
; Generování klíče:
 +
* Po spuštění ''Git Bash'' zadejte:
 +
ssh-keygen -t rsa
 +
* Pokud zadáte heslo k použití soukromého klíče, pak budete vždy při připojení vyzvání k zadání hesla.
 +
* Pro začátečníky doporučujeme heslo nezadávat, ale klíč důsledně hlídat.
 +
; Nahrátí klíče na server:
 +
* Klíče se standardně vytvoří ve vaší domovské složce v podsložce <code>.ssh</code>.
 +
** Ve Windows to bude: <code>C:\Users\''username''\.ssh</code>
 +
** V&nbsp;GNU/Linuxu to bude: <code>/home/''username''/.ssh</code>
 +
# Na GitHubu zvolte ve svém účtu: ''Settings &rarr; SSH and GPG keys''
 +
# Pojmenujte klíč (například názvem počítače) a&nbsp;vložte obsah souboru <code>.ssh/id_rsa.pub</code> do textového pole.
 +
# Potvrďte ''Add SSH key''.
 +
* Nyní se můžete k&nbsp;repozitáři připojit z&nbsp;tohoto počítače pomocí SSH klíče.
  
  
Řádka 34: Řádka 52:
 
  cd c:\users\student\Documents\develop
 
  cd c:\users\student\Documents\develop
 
* Vytvořte lokální kopii vzdáleného repozitáře:
 
* Vytvořte lokální kopii vzdáleného repozitáře:
  git clone ''https''://github.com/''username''/''repository-name''
+
  git clone ''git@github.com:''username''/''repository-name''
 
* Vznikne tak složka:
 
* Vznikne tak složka:
 
  cd c:\users\student\Dokumenty\develop\repository-name
 
  cd c:\users\student\Dokumenty\develop\repository-name
Řádka 45: Řádka 63:
 
  git branch
 
  git branch
 
* Nastavte si výchozí repozitář pro nahrávání tak, abyste mohli posléze psát pouze <code>git push</code> a&nbsp;nemuseli uvádět cílový repozitář:
 
* Nastavte si výchozí repozitář pro nahrávání tak, abyste mohli posléze psát pouze <code>git push</code> a&nbsp;nemuseli uvádět cílový repozitář:
  git push --set-upstream ''https''://github.com/''username''/''repository-name'' main
+
  git push --set-upstream ''git@github.com:''username''/''repository-name'' main
 
-->
 
-->
  
Řádka 78: Řádka 96:
 
* Upravenou verzi nahrajete do repozitáře příkazem:
 
* Upravenou verzi nahrajete do repozitáře příkazem:
 
  git push
 
  git push
 +
 +
 +
== Změna způsobu přihlašování k&nbsp;repozitáři z&nbsp;HTTPS na SSH ==
 +
* Pokud máte repozitář již stažen a&nbsp;byl klonován pomocí starší metody ověřování HTTPS, můžete ho na metodu SSH přepnout následujícím postupem:
 +
# Zobrazte adresu repozitáře:
 +
git remote -v
 +
# Zobrazí se něco jako:
 +
> origin  ''https:''//''github.com/''USERNAME''/''REPOSITORY''.git (fetch)
 +
> origin  ''https:''//''github.com/''USERNAME''/''REPOSITORY''.git (push)
 +
# Změňte adresu repozitáře
 +
git remote set-url git@github.com:''USERNAME''/''REPOSITORY''.git
 +
# Zkontrolujte:
 +
git remote -v
 +
> origin  git@github.com:''USERNAME''/''REPOSITORY''.git (fetch)
 +
> origin  git@github.com:''USERNAME''/''REPOSITORY''.git (push)
 +
* Viz také: https://docs.github.com/en/github/using-git/changing-a-remotes-url
  
  
 
== Související stránky ==
 
== Související stránky ==
 
* [[Git]], [[Git: Versioning]], [[Git: Branch]]
 
* [[Git]], [[Git: Versioning]], [[Git: Branch]]

Verze z 9. 3. 2021, 11:59


Obsah

Git


GitHub


Nastavení SSH klíče

Generování klíče
ssh-keygen -t rsa
Nahrátí klíče na server
  1. Na GitHubu zvolte ve svém účtu: Settings → SSH and GPG keys
  2. Pojmenujte klíč (například názvem počítače) a vložte obsah souboru .ssh/id_rsa.pub do textového pole.
  3. Potvrďte Add SSH key.


Repozitář

Repozitáře můžou být


Vytvoření repozitáře


Vytvoření lokální kopie repozitáře

c:
cd c:\users\student\Documents\develop
git clone git@github.com:username/repository-name
cd c:\users\student\Dokumenty\develop\repository-name


Vytvoření lokálního repozitáře bez vazby na vzdálený server
  • Pokud bychom pro vývoj nechtěli používat vzdálený server, můžeme si zařídit lokální repozitář příkazem:
git init
  • Potom bychom nepotřebovali git clone.
  • Repozitář by šlo později propojit se vzdáleným serverem pomocí:
git remote add origin https://adresa-serveru/repozitar.git
git push -u origin main
  • Pokud ale chcete pracovat se vzdáleným serverem, je jednodušší začít vytvořením repozitáře na serveru a poté git clone.


Úpravy kódu

cd c:\users\student\Dokumenty\develop\repository-name
git add .
git commit

Pokud pracuje na projektu více vývojářů, je vhodné pro každou změnu vytvořit vlastní větev viz Git: Branch tak, abychom si neměnili kód pod rukama.


Odeslání upravené verze do repozitáře

git push


Změna způsobu přihlašování k repozitáři z HTTPS na SSH

  1. Zobrazte adresu repozitáře:
git remote -v
  1. Zobrazí se něco jako:
> origin  https://github.com/USERNAME/REPOSITORY.git (fetch)
> origin  https://github.com/USERNAME/REPOSITORY.git (push)
  1. Změňte adresu repozitáře
git remote set-url git@github.com:USERNAME/REPOSITORY.git
  1. Zkontrolujte:
git remote -v
> origin  git@github.com:USERNAME/REPOSITORY.git (fetch)
> origin  git@github.com:USERNAME/REPOSITORY.git (push)


Související stránky

Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje