Vefforritun 1 kennd haustið 2025
Þessi yfirferð byggir á köflum 1, 2, 3, 6 og 7 í Pro Git eftir Scott Chacon og Ben Staub
/backup-sept-2021ritgerd-v2.docritgerd-FINAL.docritgerd-FINAL-v2.docritgerd-FINAL-FINAL.doc



24b9da6552252987aa493b52f8696cd6d3b00373
cd /verkefni/verkefnið-okkar/git init
    /.git möppu með repocd /verkefni/git clone <slóð á repo>
    /verkefni/<heiti verkefnis> með skrám og /.git
git status lætur okkur vita af stöðu skráagit add <skrá> færa skrá frá untracked eða modified í stagedgit diff lætur vita af breytingum
    git diff <skrá> fyrir ákveðna skrágit diff --staged fyrir allar skrár sem eru staged.gitignore er sérstök skrá sem inniheldur lista af skrám og möppum sem Git lætur vera
# athugasemd
# ekki geyma node_modules möppu í git
node_modules/
# ekki geyma "style.css" sem við
# þýðum frá "styles.scss"
style.css
git commit færir allt úr staged í commit sem geymt er í Gitgit commit -m "<commit message>"<type>[optional scope]: <description>, þar sem scope getur verið t.d.
    fix fyrir lagfæringu, feat fyrir nýja virkni, chore fyrir eitthvað sem er „húsverk“ (t.d. uppfæra npm pakka)git rm <skrá>git mv <skrá> <nýr-staður>git log gefur okkur lista af commitum
    git log -p -2, seinustu tvö commit með skrámEf við gleymum skrá í commiti getum við bætt við og notað amend til að bæta við:
> git commit -m "Initial commit"
> git add gleymdist.txt
> git commit --amend
git reset til að fjarlægja úr staged með HEADHEAD bendir á seinasta commit á því branch sem við erum á> git add data.txt
> git reset HEAD data.txt
Ef við viljum hætta við allar breytingar í skjali getum við notað git checkout -- <skrá>
> git checkout -- data.txt
Við missum allar breytingar síðan seinasta commit með þessari skipun
git remote sjáum við öll remote sem git hefur skilgreint fyrir okkar repogit remote -v gefur upp öll repo með slóðgit remote add <nafn> <slóð> bætir við remotegit fetch <remote-nafn> sækir gögn frá repogit remote rename <remote-nafn> <nýja-nafn>git remote remove <remote-nafn>git push <remote-nafn> <branch-nafn>git push origin main
    origin er sögulega nafnið á repo sem við clone uðumgit pull keyrir git fetch og síðan git merge fyrir það branch sem við erum að vinna ágit branch <nafn-á-branch> býr til branchgit checkout <nafn-á-branch> skiptir á branchgit checkout -b <nafn-á-branch> býr til og skiptir yfir á branchgit merge framkvæmir merge, samtvinnar eitt branch inn í annað> git merge iss53
Auto-merging index.html
CONFLICT (content): Merge conflict in index.html
Automatic merge failed; fix conflicts and then commit the result.
<<<<<<< HEAD:index.html
<div id="footer">contact : email.support@github.com</div>
=======
<div id="footer">
 please contact us at support@github.com
</div>
>>>>>>> iss53:index.html
Þegar við erum að vinna nokkur saman getum við lent í mörgum merge commitum
aaaaaaa – Fix foo
bbbbbbb – Merge branch 'main' of https://github.com/foo
ccccccc – Add bar
ddddddd – Merge branch 'main' of https://github.com/foo
eeeeeee – Remove baz
fffffff – Merge branch 'main' of https://github.com/foo
main