Tredun ohjelmistokehittäjien kurssimateriaaleja
Jos local- ja remote-repo ovat olemassa (tehty uusi repo tai kloonattu vanha), tiedostoja päivitetään Github:iin ajamalla:
git add *
git commit -m "Second update"
git push
Joskus muutoksia tulee useammalta local-repository:ltä. Silloin remote ja koneesi local-repo ovat ns. epäsynkassa. Näin voi käydä jos vaikka teet töitä kahdella eri koneella, joissa on omat local-reponsa. Jos teet vaikka kotona töitä, ja teet push-operaation remote-repoon, seuraavan kerran kun aloitat työt koulun koneella lataa tekmäsi päitykset seuraavasti, ennen kuin jatkat hommia:
git pull
Jos unohdat tehdä pull:in ja aloitat koodaamisen, teet commit:eja, local-repoosi, push-operaatio ei enää onnistukaan, koska local ja remote ovat nyt epäsynkassa.
Hae ensin muutokset remote-reposta:
git fetch
git status
Tässä vaiheessa git status ilmoittaa, että remote-repo on sinua edellä ahead ja sinun tulee yhdistää ne tekemällä pull:in.
git pull
auto-merge ei aina onnistu, varsinkaan jos muutokset ovat samassa tiedostostossa. Jos gitbash ilmoittaa kohdanneensa merge conflict:in, sinun pitää ne korjata konfliktit itse.
Avaa ko. tiedosto VSCode:lla. Valitse vertailu, niin muutosten editointi on helpompaa.
Lopuksi muutokset pitää push:ata remote-repoon (add-commit-push).