Git: Forskelle mellem versioner

Fra IMADA Wiki
Spring til navigation Spring til søgning
m start på login uden password
Færdiggør "git uden password" afsnit
Linje 4: Linje 4:
IMADA har sin egen Git server som man kan tilgå her http://git.imada.sdu.dk/. Som studerende kan man blot logge ind med sin studiemail.
IMADA har sin egen Git server som man kan tilgå her http://git.imada.sdu.dk/. Som studerende kan man blot logge ind med sin studiemail.


== log ind uden password ==
== Brug Git uden password ==
Git kan opsættes med identity keys<ref>https://git-scm.com/book/en/v2/Git-on-the-Server-Generating-Your-SSH-Public-Key</ref> så man ikke behøver at skrive sit login hver gang man push'er og pull'er. For at gøre dette skal man først generere et public/private nøglepar og gemme det i <code>~/.ssh</code> mappen.
Git kan opsættes med identity keys<ref>https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent</ref> så man ikke behøver at skrive sit login hver gang man push'er og pull'er. For at gøre dette skal man først generere et public/private nøglepar og gemme det i <code>~/.ssh</code> mappen. Det kan gøres ved at køre følgende kommando. Når den spørger om password kan du blot klikke enter for intet password, ellers skal du skrive det hver gang du logger ind.<syntaxhighlight lang="shell">
ssh-keygen -t ed25519 -f ~/.ssh/imadagit
</syntaxhighlight>Når det er gjort skal nøglen tilføjes til <code>~/.ssh/config</code> filen så git ved at den skal bruge den nye nøgle til IMADA git serveren.


TODO: skriv videre
Tilføj følgende to linjer til <code>~/.ssh/config</code> filen, hvis filen ikke findes endnu skal du blot lave filen.
[[Fil:IMADA Git ssh key box.png|thumb|Eksempel på tilføjelse af public key på IMADA git serveren]]
<syntaxhighlight line="1" start="1">
Host git.imada.sdu.dk
    IdentityFile ~/.ssh/imadagit
 
</syntaxhighlight>Til sidst skal nøglen tilføjes til din IMADA git profil, så nøglen kan bekræftes når du logger ind. Det gøres ved at gå ind på [https://git.imada.sdu.dk/user/settings/keys SSH / GPG Keys] i indstillingerne på IMADA git. Klik <code>Add Key</code> oppe i højre hjørne. Giv nu nøglen et navn, f.eks. <code>Laptop</code>. I <code>Content</code> feltet skal du skrive din public key, den kan du finde ved at skrive følgende kommando.<syntaxhighlight lang="shell">
cat ~/.ssh/imadagit.pub
</syntaxhighlight>


== Git cheatsheet ==
== Git cheatsheet ==

Versionen fra 11. sep. 2023, 19:28

Git er et version control program som kan bruges til at gemme versioner af kode eller tekst-filer, og gøre samarbejde nemmere.

IMADA Git Server

IMADA har sin egen Git server som man kan tilgå her http://git.imada.sdu.dk/. Som studerende kan man blot logge ind med sin studiemail.

Brug Git uden password

Git kan opsættes med identity keys[1] så man ikke behøver at skrive sit login hver gang man push'er og pull'er. For at gøre dette skal man først generere et public/private nøglepar og gemme det i ~/.ssh mappen. Det kan gøres ved at køre følgende kommando. Når den spørger om password kan du blot klikke enter for intet password, ellers skal du skrive det hver gang du logger ind.

ssh-keygen -t ed25519 -f ~/.ssh/imadagit

Når det er gjort skal nøglen tilføjes til ~/.ssh/config filen så git ved at den skal bruge den nye nøgle til IMADA git serveren.

Tilføj følgende to linjer til ~/.ssh/config filen, hvis filen ikke findes endnu skal du blot lave filen.

Eksempel på tilføjelse af public key på IMADA git serveren
Host git.imada.sdu.dk
    IdentityFile ~/.ssh/imadagit

Til sidst skal nøglen tilføjes til din IMADA git profil, så nøglen kan bekræftes når du logger ind. Det gøres ved at gå ind på SSH / GPG Keys i indstillingerne på IMADA git. Klik Add Key oppe i højre hjørne. Giv nu nøglen et navn, f.eks. Laptop. I Content feltet skal du skrive din public key, den kan du finde ved at skrive følgende kommando.

cat ~/.ssh/imadagit.pub

Git cheatsheet

# lav et nyt git projekt
git init

# download et git projekt (eller hvis du er lost og bliver nødt til at starte forfra)
git clone [URL]

# gør alle ændrede filer klar til commit
git add .

# se status inden du committer
git status

# lav et commit
git commit -m 'Commit besked'

# upload de nye commits til serveren
git push

Git ignore

I et Git projekt kan man lave en ny fil i toppen af projektet som hedder .gitignore. På hver linje i filen kan man skrive navnet på filer og mapper som man ikke vil have med i commits.

Eksempel på en .gitignore fil

build/

# Java
*.class

# MacOS
.DS_Store

Her vil "build" mappen, alle filer som slutter på ".class" og autogenerede mac filer ikke komme med i git commits.

* Git: Distributed Version Control (PDF) - Jakob Løkkes guide til Git