Phase 00: Setup & Tooling

Git & İşbirliği

Her deney, model, ders burada izlenir.

Type: Learn

Languages: --

Prerequisites: Phase 0, Lesson 01

Time: ~30 minutes

Öğrenme Hedefleri

  • Git kimliğini yapılandırın ve günlük ekleme, commit ve push iş akışını kullanın
  • Ana parçaları kırmadan ayrı deneyler için dallar oluşturun ve birleştirin
  • Bir yazın ..gitignoreBu, model kontrol noktalarını ve büyük ikili dosyaları hariç.
  • Bağlantı geçmişini ile gezingit logproje gelişimini anlamak için

Sorun

20 aşamada yüzlerce kod dosyası yazmak üzeresin. Sürüm kontrolü olmadan iş kaybedeceksin, geri alamayacağın şeyleri çözeceksin ve başkalarıyla işbirliği yapmanın hiçbir yolu olmayacak.

Git, bu araç. GitHub, kodun yaşadığı yerdir. Bu ders, bu kurs için ihtiyacınız olanları kapsar ve daha fazlasını içermez.

Anlaşım

sequenceDiagram
    participant WD as Working Directory
    participant SA as Staging Area
    participant LR as Local Repo
    participant R as Remote (GitHub)
    WD->>SA: git add
    SA->>LR: git commit
    LR->>R: git push
    R->>LR: git fetch
    LR->>WD: git pull

Hatırlamak için üç şey:

  1. Sık sık saklayın (git commit)
  2. Uzak kontrol (git push)
  3. Deneyimler için bölge (git checkout -b experiment)

Yapın

Adım 1: Git'i yapılandır

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

Adım 2: Günlük iş akışı

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

Adım 3: Deney için dallama

bashgit checkout -b experiment/new-optimizer

# ... make changes, commit ...

git checkout main
git merge experiment/new-optimizer

Adım 4: Bu kurs repo ile çalışmak

Bu yüzden, GitHub'da yazma girişini yapın.originKendi kopyasında belirtiler:

bashgit clone https://github.com/YOUR-USERNAME/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

Kullan

Bu kurs için şu emirlere ihtiyacınız var:

CommandWhen
git cloneGet the course repo
git add + git commitSave your work
git pushBack it up to GitHub
git checkout -bTry something without breaking main
git log --onelineSee what you've done

Bu ders için rebase, cherry-pick veya submodules gerekmiyor.

Egzersizler

  1. Bu repoyu kırp, çatalını klonla, my-progressDosya yap, bindir, it
  2. Bir .gitignoreBu, kontrol nokta dosyalarının modelini kapsar (.pt- Evet ..pth- Evet ..safetensors)
  3. Bu repo ' nun commit tarihiyle ilgili bir bakış .git log --onelineVe derslerin nasıl eklendiğini okuyun.

Anahtar Terimler

TermWhat people sayWhat it actually means
Commit"Saving"A snapshot of your entire project at a point in time
Branch"A copy"A pointer to a commit that moves forward as you work
Merge"Combining code"Taking changes from one branch and applying them to another
Remote"The cloud"A copy of your repo hosted somewhere else (GitHub, GitLab)

This free lesson is part of the AI Engineering from Scratch curriculum. Read the full explanation, run the lesson code, and verify the result in the interactive reader or from the repository source.

Browse the complete course catalog or open this lesson on GitHub.