Faza 00 · lecția 02

Git și colaborare

Scopul lecției: Controlul versiunilor nu este opțional. Fiecare experiment, fiecare model și fiecare lecție pe care le creați aici sunt urmărite.

Versiunea curentă AlexBred.com: primele 100 de lecții ale programului în limba română.

Curs
AI Engineering from Scratch
Fază
Configurare și instrumente
Lectură
4 min.
Verificat
Cuprinsul lecției
  1. Obiective de învățare
  2. Problema
  3. Conceptul
  4. Implementare
  5. Pasul 1: Configurați Git
  6. Pasul 2: Fluxul de lucru zilnic
  7. Pasul 3: Folosirea ramurilor pentru experimente
  8. Pasul 4: Lucrul cu depozitul acestui curs
  9. Utilizare
  10. Exerciții
  11. Termeni-cheie

Controlul versiunilor nu este opțional. Fiecare experiment, fiecare model și fiecare lecție pe care le creați aici sunt urmărite.

Tip: Învățare Limbaje:Cerințe preliminare: Faza 0, lecția 01 Timp: aproximativ 30 de minute

Obiective de învățare

  • Să configurați identitatea Git și să folosiți fluxul de lucru zilnic bazat pe add, commit și push
  • Să creați și să îmbinați ramuri pentru experimente izolate, fără a afecta ramura main
  • Să scrieți un fișier .gitignore care exclude punctele de control (checkpoint) ale modelelor și fișierele binare mari
  • Să parcurgeți istoricul commiturilor cu git log pentru a înțelege evoluția proiectului

Problema

Urmează să scrieți sute de fișiere cu cod de-a lungul a 20 de faze. Fără controlul versiunilor, vă veți pierde munca, veți strica lucruri fără să le puteți repara sau anula și nu veți avea nicio modalitate de a colabora cu alte persoane.

Git este instrumentul. GitHub este locul unde se află codul. Această lecție prezintă ceea ce vă trebuie pentru acest curs și nimic mai mult.

Conceptul

Диаграмма к уроку «Git și colaborare»

Trei lucruri de reținut:

  1. Salvați frecvent (git commit)
  2. Trimiteți modificările către depozitul la distanță (git push)
  3. Creați ramuri pentru experimente (git checkout -b experiment)

Implementare

Pasul 1: Configurați Git

git config --global user.name "Your Name"
git config --global user.email "you@example.com"

Pasul 2: Fluxul de lucru zilnic

git status
git add file.py
git commit -m "Add perceptron implementation"
git push origin main

Pasul 3: Folosirea ramurilor pentru experimente

git checkout -b experiment/new-optimizer

# ... make changes, commit ...

git checkout main
git merge experiment/new-optimizer

Pasul 4: Lucrul cu depozitul acestui curs

git clone https://github.com/rohitg00/ai-engineering-from-scratch.git
cd ai-engineering-from-scratch

git checkout -b my-progress
# work through lessons, commit your code
git push origin my-progress

Utilizare

Pentru acest curs aveți nevoie exact de următoarele comenzi:

Comandă Când se folosește
git clone Pentru a obține depozitul cursului
git add + git commit Pentru a vă salva lucrul
git push Pentru a crea o copie de siguranță pe GitHub
git checkout -b Pentru a încerca ceva fără a afecta ramura main
git log --oneline Pentru a vedea ce ați făcut

Atât. Pentru acest curs nu aveți nevoie de rebase, cherry-pick sau submodule.

Exerciții

  1. Clonați acest depozit, creați o ramură numită my-progress, creați un fișier, adăugați-l într-un commit și trimiteți-l către depozitul la distanță
  2. Creați un fișier .gitignore care exclude fișierele de tip checkpoint ale modelelor (.pt, .pth, .safetensors)
  3. Consultați istoricul commiturilor acestui depozit cu git log --oneline și citiți cum au fost adăugate lecțiile

Termeni-cheie

Termen Cum spun oamenii Ce înseamnă de fapt
Commit „Salvare” Un instantaneu al întregului proiect la un anumit moment
Ramură (branch) „O copie” Un indicator către un commit, care avansează pe măsură ce lucrați
Îmbinare (merge) „Combinarea codului” Preluarea modificărilor dintr-o ramură și aplicarea lor în alta
Depozit la distanță (remote) „Cloudul” O copie a depozitului, găzduită în altă parte (GitHub, GitLab)

Sursă: Git & Collaboration — originalul Navigare: înapoi: 00.01 — Mediul de dezvoltare · Faza 0 — Configurare și instrumente · Catalog complet · înainte: 00.03 — Configurare GPU și cloud