Bu proje, bir portfolyo çalışmasından öte, Git versiyon kontrol sisteminin çekirdek mantığını ve temel prensiplerini anlamak amacıyla yazılmış bir uygulamadır. Bu uygulamayı geliştirirken, wyag.thb.lt adresindeki mükemmel rehberden faydalanıyor ve kodun her satırını aşama aşama kendim yazıyorum. Amacım, Git'i yalnızca komutları ezberlenmiş bir kara kutu olarak kullanmak yerine, derinlemesine kavramaktır. Bu, karmaşık bir aracı sıfırdan inşa etmenin verdiği eşsiz tatmini yaşamak ve problem çözme yeteneklerimi bir sonraki seviyeye taşımak için bir fırsattır.
Bu proje, Git'in temel mantığını öğrenmek amacıyla Python diliyle geliştirilmiş basit bir Git klonudur. Amacı, Git'in çalışma prensiplerini (commit, tree, blob, branch vb.) düşük seviyede anlamaktır.
- Temel Git nesnelerini (blob, tree, commit) yönetme
- Repository başlatma (
init) - Dosya ekleme ve commit işlemleri
- Branch oluşturma ve checkout
- Commit geçmişini inceleme (
log) - Dosya içeriklerini görüntüleme (
cat-file) - Object hashleme (SHA-1) mantığı
Projeyi kendi terminalinizde denemek için şu adımları izleyebilirsiniz:
- Bu depoyu yerel makinenize klonlayın.
- Python 3.10 veya üzeri bir sürümün yüklü olduğundan emin olun.
- Terminalde
wyagdosyasının bulunduğu dizine gidin. - Yeni bir depo oluşturmak için aşağıdaki komutu çalıştırın:
python wyag init <depo_adı>
- Python 3.7+
- Hashlib (standart kütüphane)
MIT
Bu projenin temelini oluşturan, harika ve anlaşılır rehber için wyag.thb.lt sitesinin yazarına teşekkür ederim.