Felhasználói eszközök

Eszközök a webhelyen


it:git

Különbségek

A kiválasztott változat és az aktuális verzió közötti különbségek a következők.

Összehasonlító nézet linkje

Előző változat mindkét oldalonElőző változat
it:git [2013/09/02 10:29] – [Hard reset] rblstit:git [Unknown date] (aktuális) – külső szerkesztés (Unknown date) 127.0.0.1
Sor 1: Sor 1:
 +====== Git ======
 +===== Utolsó commitok összeolvasztása =====
 +<code bash>
 +git stash # jelenlegi állapot elmentése
 +git rebase -i HEAD~2 # utolsó 2 commit, a fenti a régebbi
 +git stash apply # állapot visszaállítása
 +</code>
 +
 +===== Utolsó commit javítása =====
 +<code bash>
 +git add ...
 +git commit --amend
 +</code>
 +
 +
 +===== Utolsó commit törlése =====
 +==== Aktuális állapot ====
 +
 +A ''C'' a HEAD, az ''(F)'' pedig a fájlok állása.
 +
 +<code>
 +   (F)
 +A-B-C
 +    ↑
 +  master
 +</code>
 +
 +==== Hard reset ====
 +A ''C'' commit eltüntetése.
 +
 +<code>
 +git reset --hard HEAD~1
 +</code>
 +
 +=== Eredmény ===
 +<code>
 + (F)
 +A-B
 +  ↑
 +master
 +</code>
 +
 +Most a ''B'' a HEAD. A ''--hard'' kapcsoló miatt a fájlok a B commit állapotára tértek vissza.
 +
 +=== Helyreállíátás ===
 +Mozgatott commitok listája:
 +<code>
 +git reflog 
 +</code>
 +
 +Meg kell keresni az eltüntetett commitot, majd:
 +
 +<code>
 +git checkout -b someNewBranchName shaYouDestroyed
 +</code>
 +====Normal reset ====
 +<code>
 +git reset HEAD~1
 +</code>
 +
 +=== Eredmény ===
 +<code>
 +   (F)
 +A-B-C
 +  ↑
 +master
 +</code>
 +
 +==== Soft reset ====
 +<code>
 +git reset --soft HEAD~1
 +</code>
 +
 +Ez az indexet is meghagyja jelen állapotában.  Ha ezután nyomunk egy commitot, akkor a C commitot kapjuk.
 +