Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Git dalları gibi dalların nasıl kullanılacağını, her geliştiriciye bağımsız çalışma için yalıtılmış bir dal vereceğinizi ve ardından senkronizasyon için yeniden ayarlayacağınızı öğrenin.
Önkoşullar
- Varsayılan
productiondalına sahip bir Lakebase projesi -
developmentPaylaşılan geliştirme çalışmaları için 'denproductionoluşturulan bir dal - SQL ve Postgres hakkında temel bilgiler
Başlangıç şemanızı ayarlama
Geliştirici dalınızı oluşturmadan önce geliştirme dalında basit bir şema ayarlayın. Bu, tüm geliştiricilerin fork edeceği paylaşılan başlangıç noktası işlevi görür. Kişisel dalınızı oluşturduğunuzda, bu şemayı kopyalama üzerine yazma yoluyla anında devralır.
- Lakebase kullanıcı arabiriminde geliştirme dalınıza gidin.
- SQL Düzenleyicisi'ni açın.
- Örnek verilerle temel kullanıcılar tablosu oluşturma:
CREATE TABLE users (
id SERIAL PRIMARY KEY,
email TEXT NOT NULL UNIQUE,
created_at TIMESTAMP DEFAULT NOW()
);
INSERT INTO users (email) VALUES
('alice@example.com'),
('bob@example.com'),
('charlie@example.com');
Geliştirici dalınızı oluşturma
Ekibinizdeki her geliştiricinin devam eden çalışmalar için uzun süreli bir dalı olabilir. Üst öğeyle eşitlenmiş durumda kalmak için düzenli aralıklarla sıfırlayın.
Projenizin dal listesinden geliştirme dalını seçin ve ardından Alt dal oluştur'a tıklayın. Bir dal adı (gerekli), dev/alex deseni gibi dev/<your-name> girin ve Oluştur tıklayın.
Dal anında oluşturulur ve kopyalayarak yazma yöntemiyle geliştirmeden gelen tüm şemaları ve verileri içerir.
Dal hiyerarşiniz:
production (root)
└── development (has users table + data)
└── dev/alex (instantly inherits users table + data)
Özelliğinizi geliştirme
.env dosyanızdaki bağlantı dizesini güncelleyerek uygulamanızı geliştirme dalınıza yönlendirin, sonra da normal iş akışınızı kullanarak mevcut özelliğinizi geliştirin.
Örneğin, uygulamanıza kullanıcı tercih izlemesi eklemek için kullanıcı modelinizi güncelleştirme, çerçevenizle (Prisma, Alembic, Django vb.) bir geçiş oluşturma ve bunu dalınızda dev/alex çalıştırma işlemleri gerekebilir. Geçiş dosyanız şu içeriği içerebilir:
ALTER TABLE users ADD COLUMN preferences JSONB DEFAULT '{}';
CREATE INDEX idx_users_preferences ON users USING GIN (preferences);
Geçişi çalıştırdıktan sonra uygulama kodunuzda tercih özelliğini geliştirin ve tam akışı yerel olarak test edin. Dalınız tamamen yalıtılmış. Değişiklikler üretimi veya diğer geliştiricileri etkilemez.
Değişikliklerinizi inceleme
Diğer ortamlara yükseltmeden önce, tam olarak nelerin değiştiğini doğrulamak için şema farkını kullanın. Dalınızın dev/alex genel bakış sayfasına gidin, Şema farkını tıklatın ve development ile karşılaştırın.
Yan yana karşılaştırmada yeni preferences sütununuz ve dizininiz yeşil renkte gösterilir:
Bu doğrulama adımı, üretime ulaşmadan önce istenmeyen değişiklikleri yakalamaya yardımcı olur. Şema farkı belgelerinin tamamı için bkz. Dal şemalarını karşılaştır.
Değişikliklerinizi tanıtın
Yükseltme otomatik değildir. Değişikliklerinizi uygulamak için, ilk olarak development dalınızda çalıştırdığınız aynı geçişi dev/alex dalınızda da çalıştırın. Lakebase'e özgü bir adım söz konusu değildir. Geçiş dosyanız zaten kod tabanınızda olduğundan bu işlem normal dağıtım işleminizi izler.
- Bağlantı dizesini, dalınızı işaret eden
developmentolacak şekilde güncelleştirin. -
developmentiçin kullandığınız komutu kullanarak, geçişinizidev/alexüzerinde çalıştırın. - Güncelleştirilmiş uygulama kodunuzu dağıtın.
Geçiş, kişisel şubenizde zaten doğrulandığından, sorunsuz bir şekilde uygulanmalıdır. Terfi edildikten sonra, diğer geliştiriciler development'den dallarını sıfırladıklarında güncellenmiş şemayı göreceklerdir.
Sıfırlama ve yeni başlangıç
Yeni bir çalışmaya başlamaya hazır olduğunuzda, diğer geliştiricilerin değişiklikleri olmuş olabilecek development ile eşitlenmiş durumda kalmak için kişisel dalınızı sıfırlayın. Bu size geçerli paylaşılan temelden yeni bir başlangıç sağlar.
Dalınıza dev/alex gidin ve Üst öğeden sıfırla'ya tıklayın. Sıfırlama modali, tüm veritabanlarının ve rollerin development’dan gelen en güncel verilerle değiştirileceğini onaylar. Bu eylem geri alınamaz, bu nedenle onaylamadan önce saklamak istediğiniz değişiklikleri yükseltdiğinizden emin olun.
Dalınız artık tam olarak development ile eşleşiyor, ve bir sonraki göreviniz için tamamen hazır.
En iyi yöntemler
-
Tutarlı adlandırma kullanın: Geliştirici dalları için
dev/<name>şablonunu izleyin. -
Düzenli olarak sıfırla: Kaymayı önlemek için dalınızı
developmentile senkronize halde tutun. - Üretimi koruma: Yanlışlıkla yapılan değişiklikleri önlemek için korumalı dalları kullanma