Git upload na server
Snažím se nahrát Gitem provedené změny na server:
Vytvoření branche na lokále:
git fetch --all
git branch -r
git checkout origin/gen-smluv-initial
git checkout -b repo-gen-smluv
Provedu nějaké změny a nahraju je na server:
git push origin repo-gen-smluv:repo-gen-smluv
Ale bohužel na webu se změny neprojeví . Přitom vše se tváří, že je OK.
1. Je nějaký způsob jak vypsat obsah konkrétního souboru na serveru (abych měla jistotu, že se tam změny opravdu nahrály)?
2. Čím může být způsobeno, že na webu je pořád starý kód?
Teď jsem zkusila ten upravený branch ze serveru vycheckoutovat pod jiným jménem na lokál. Změny se na server nahrály. Ale na webu se neprojevily .
Dík za tip
A máš na serveru svůj klon masteru? Nebo pushuješ přímo do masteru? Na to totiž většinou má právo jen maintainer masteru. Ty pushuješ jenom do svého klonu a pak posílaš merge request na merge svého klonu s masterem. Dokud není proveden merge, změny v masteru nebudou.
Šéf teď přiznal, že je to tak, že na serveru je další adresář, který je KLONEM toho, kam to nahrávám (tedy žádný merge už nutný není, jen to naklonovat) a ten se zobrazuje na webu.
Pokud pushuješ do klonu a na serveru je ještě jiný klon toho samého, tak si můžeš udělat merge mezi těmi klony. Nemusíš znova klonovat.
U nás se s GITem osvědčilo následující workflow:
1) Každý developer má na serveru svůj klon masteru, kam má právo pushovat změny.
2) Když developer řeší task, vytvoří si branch z názvem tohoto tasku.
3) Když je hotov, pushne branch s taskem do svého klonu na server a pošle maintainerovi masteru merge request. Maintainer udělá code rewiev, pokud je vše ok, provede merge developerova klonu s masterem.