GITHUB Flashcards
Што претставува Source (Version) Control?
Source control е витална компонента од животниот циклус за развој на софтвер. Овозможува:
Пратење на промени, преглед на историја на промени, интеграција со околини за развој на софтвер, автоматизација, итн.
Познати Source Control Management системи?
Git, Subversion, Mercurial, Perforce, CVS..
Точно или грешно:
Постојат локални, централни и дистрибуирани VCS системи.
Точно.
Што е git и што овозможува?
Git e version control system кој се корист за пратење на промени во изворниот код за време на развој на софтвер.
Овозможува:
Колаборативна работа на повеќе девелопери, работа на различни гранки, навраќање на претходни верзии, итн.
Кои се трите главни состојби во кои можат да бидат фајловите на git?
Modified, staged и commited.
Кога го обележуваме променетиот фајл и ја спремаме неговата моментална верзија за следниот commit, од која во која состојба преминува фајлот?
Преминува од modified во staged.
Што претставува состојбата commited?
Податоците се безбедно зачувани во нашата локална база на податоци
Со која команда се иницијализира репозиториум во веќепостоечка дадотека?
git init
За што се користи git add?
За променетите документи да преминат од modified во staged
Со која команда се прави commit?
git commit
Како да провериме дали состојбата на гранката во репозиториумот е во тек со локалната база?
git status
Животен циклус на датотеките?
Untracked -> (add file) -> staged
Unmodified -> (edit) -> modified -> (stage) -> staged
Staged -> (commit) ->unmodified
Unmodified -> (removed) -> untracked
Со која команда се проверува краток статус на гранка?
git status -s
Која наставка ја има датотеката која кажува какви датотеки да не се прикачуваат на репозиториумот?
.gitignore
Доколку сакаме да корегираме скорашен commit која команда се користи?
git commit –amend
За што се користи git reset HEAD <file>?</file>
За да се тргне датотека од staged состојба
Доколку сакаме да вратиме верзија на конкретна датотека кон верзијата од последниот комит, која команда се користи?
git checkout – <file>
или git restore <file></file></file>
Разлика помеѓу:
git checkout – <file>
и
git reset HEAD <file></file></file>
Со git checkout датотеката се враќа во unmodifed верзија, поради тоа што се зема верзијата на датотеката од последниот commit.
Додека, со reset датотеката останува иста на локалната машина, но само се враќа од staged состојба во modifed. Се користи кога сакаме да исклучиме некоја датотека од следниот commit.
Како ги чува git податоците?
Како серии на snapshots.
Што содржи commit објектот?
Commit објектот содржи:
Покажувач кон snapshot на содржината која е staged.
Име и мејл на авторот.
Пораката на комитот.
Покажувачи кон родителите на комитите кои се направени директно пред моменталниот.
Што е гранка?
Гранка во git е покажувач кон некој комит.
Како git знае на која гранка момоментално работиме?
Постои специјален покажувач: HEAD, кој покажува кон гранката (покажувач) на која работиме.
Како се прават нови гранки на git?
git checkout -b <newbranchname>
git switch -c <newbranchname></newbranchname></newbranchname>
Кога се прави merge, што означува фразата fast-forward?
Snapshot-от на новиот branch е директно поврзан со другиот, па оној branch на кој ги спојуваме промените само се поместува на snapshot-от до него.