====== GIT ======
Na správu kódu v projektech používám GIT. Při používání jsme se setkal s následujícími potřebami:
===== Založení nového repozitáře =====
Nejprve vstoupím do složky, ze které chci vytvořit repozitář a její obsah verzovat a zálohovat. Pak spustím inicializaci, přidám všechny soubory a vytvořím první revizi.
git init
git submodule add https://github.com/mvillion/iiyama_x4071.git
git add *
git commit -a -m "Create repository."
===== Vložení existujícího repozitáře do současného projektu =====
git submodule add https://github.com/mvillion/iiyama_x4071.git
git add *
git commit -a -m "Updated repository."
===== Uploadnutí repozitáře skrz SSH na jiný server =====
Nejprve vytvořím na serveru prostor, kam bude můj repozitář zálohován. Bez tohoto kroku to nepůjde.
git init --bare Langino.git
Poté na svém počítači (ne na serveru) nastavím, kam se má git repozitář skrz SSH zálohovat.
git remote add slovni-nazev-serveru ssh://uzivatel@192.168.1.1:22/mnt/projects/Langino.git
A pro synchornizaci se serverem už jenom stačí zadávat tento příkaz. Cesta k serveru byla už nastavena v předchozím příkaze.
git push slovni-nazev-serveru master
Pro vypsání všech vzdálených cest.
git remote -v
git remote
Pro změnu již uložené SSH url:
git remote set-url slovni-nazev-serveru ssh://uzivatel@192.168.1.1:22/mnt/projects/Langino.git
===== Vracení změn =====
Toto vrátí soubory do posledního commitnutého stavu repozitáře. Všechny nové modifikace, které byly provedeny a nebyly commitnuty budou ztraceny. Ovšem zůstanou soubory a složky, které byly oproti původnímu commitnutí přidány.
git reset --hard HEAD
Smazání nově přidaných souborů a složek, které jsou **untracked** - tedy nejsou commitnuté udělá tento příkaz:
git clean -f -d
zdroj:
* https://stackoverflow.com/questions/30875205/restore-a-deleted-folder-in-a-git-repo