Restaurarea și revenirea la fișiere

Introducere în Git

George Boorman

Curriculum Manager, DataCamp

Introducerea unei erori

Patru fișiere într-un repo, dintre care trei sunt adăugate în zona de staging și unul este committed: report.md, mental health survey.csv și summary statistics.csv

Introducere în Git

Revenirea la fișiere

  • Restaurarea repo-ului la starea anterioară commit-ului precedent

  • git revert

    • Restabilește versiunile anterioare și creează un commit
    • Restaurează toate fișierele actualizate în commit-ul dat
    • a845edcb, ebe93178, etc
    • HEAD, HEAD~1, etc
git revert HEAD
Introducere în Git

Revenirea la fișiere

git revert HEAD

Editor de text care arată că commit-ul

  • Salvare: Ctrl + O, apoi Enter
  • Ieșire: Ctrl + X
Introducere în Git

Revenirea la fișiere

[main 7d11f79] Revert "Adding fresh data for the survey."
 Date: Tue Jul 30 14:17:56 2024 +0000
 1 file changed, 3 deletions(-)
Introducere în Git

Opțiuni git revert

  • Evitați deschiderea editorului de text
    git revert --no-edit HEAD
    

 

  • Revenire fără commit (aduce fișierele în zona de staging)
    git revert -n HEAD
    
Introducere în Git

Revenirea la un singur fișier

  • git revert funcționează pe commit-uri, nu pe fișiere individuale

  • Pentru a reveni la un singur fișier:

    • git checkout
    • Utilizați hash-ul commit-ului sau sintaxa HEAD
git checkout HEAD~1 -- report.md
Introducere în Git

Verificarea checkout-ului

git status
On branch main
Changes to be committed:
  (use "git restore --staged <file>..." to unstage)

        modified:   report.md
Introducere în Git

Efectuarea unui commit

git commit -m "Checkout previous version of report.md"
[main daa6c87] Checkout previous version of report.md
 1 file changed, 1 deletion(-)
Introducere în Git

Eliminarea unui fișier din staging

Patru fișiere într-un repo, dintre care trei sunt adăugate în zona de staging: report.md, mental health survey.csv și summary statistics.csv

Introducere în Git

Eliminarea unui fișier din staging

Summary statistics este mutat din zona de staging înapoi în repo

Introducere în Git

Eliminarea unui singur fișier din staging

  • Pentru a elimina un singur fișier din staging:
git restore --staged summary_statistics.csv
  • Editați fișierul
git add summary_statistics.csv
git commit -m "Adding age summary statistics"
Introducere în Git

Eliminarea tuturor fișierelor din staging

  • Pentru a elimina toate fișierele din staging:
git restore --staged
Introducere în Git

Rezumat

Comandă Rezultat
git revert HEAD Revenire la toate fișierele dintr-un commit dat
git revert HEAD --no-edit Revenire fără deschiderea unui editor de text
git revert HEAD -n Revenire fără crearea unui commit nou
git checkout HEAD~1 -- report.md Revenire la un singur fișier din commit-ul anterior
git restore --staged report.md Eliminarea unui singur fișier din staging
git restore --staged Eliminarea tuturor fișierelor din staging
Introducere în Git

Să exersăm!

Introducere în Git

Preparing Video For Download...