Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Penting
Lakebase Autoscaling berada di Beta di wilayah berikut: eastus2, , westeuropewestus.
Lakebase Autoscaling adalah versi terbaru Lakebase dengan komputasi penskalaan otomatis, skala-ke-nol, percabangan, dan pemulihan instan. Untuk perbandingan fitur dengan Lakebase Provisioned, lihat memilih antar versi.
Pelajari cara menggunakan cabang seperti cabang Git, memberi setiap pengembang cabang terisolasi untuk pekerjaan independen, lalu mengatur ulang agar tetap sinkron.
Prasyarat
- Proyek Lakebase dengan
productioncabang (default) - Cabang
developmentyang dibuat dariproductionuntuk pekerjaan pengembangan bersama - Pemahaman dasar tentang SQL dan Postgres
Menyiapkan skema awal Anda
Sebelum membuat cabang pengembang Anda, siapkan skema sederhana di cabang pengembangan. Ini berfungsi sebagai titik awal bersama yang akan digunakan semua pengembang untuk ber fork. Ketika Anda membuat cabang pribadi Anda, itu langsung mewarisi skema ini melalui copy-on-write.
- Navigasi ke cabang pengembangan Anda di UI Lakebase.
- Buka Editor SQL.
- Buat tabel pengguna dasar dengan data sampel:
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');
Buat cabang untuk pengembangan Anda
Setiap pengembang di tim Anda dapat memiliki cabang yang berlangsung lama untuk pekerjaan berkelanjutan. Atur ulang secara berkala agar tetap sinkron dengan induk.
Dari daftar cabang proyek Anda, pilih cabang pengembangan , lalu klik Buat cabang anak. Masukkan nama cabang (diperlukan) seperti dev/alex (mengikuti pola dev/<your-name>) dan klik Buat.
Cabang dibuat secara instan dan mencakup semua skema dan data dari pengembangan melalui metode copy-on-write.
Hierarki cabang Anda:
production (root)
└── development (has users table + data)
└── dev/alex (instantly inherits users table + data)
Mengembangkan fitur Anda
Arahkan aplikasi Anda ke cabang dev Anda dengan memperbarui string koneksi dalam file Anda .env , lalu kembangkan fitur Anda menggunakan alur kerja normal Anda.
Misalnya, menambahkan pelacakan preferensi pengguna ke aplikasi Anda akan melibatkan pembaruan model pengguna Anda, menghasilkan migrasi dengan kerangka kerja Anda (Prisma, Alembic, Django, dll.), dan menjalankannya di cabang Anda dev/alex . File migrasi Anda mungkin berisi:
ALTER TABLE users ADD COLUMN preferences JSONB DEFAULT '{}';
CREATE INDEX idx_users_preferences ON users USING GIN (preferences);
Setelah menjalankan migrasi, kembangkan fitur preferensi dalam kode aplikasi Anda dan uji alur lengkap secara lokal. Cabang Anda sepenuhnya terisolasi—perubahan tidak memengaruhi produksi atau pengembang lain.
Meninjau perubahan
Sebelum mempromosikan ke lingkungan lain, gunakan perbedaan skema untuk memverifikasi dengan tepat apa yang berubah. Navigasi ke gambaran umum cabang Anda dev/alex , klik Skema berbeda, dan bandingkan dengan development.
Perbandingan berdampingan memperlihatkan kolom dan indeks baru preferences Anda dalam warna hijau:
Langkah verifikasi ini membantu menangkap perubahan yang tidak diinginkan sebelum mencapai produksi. Untuk dokumentasi perbedaan skema lengkap, lihat Membandingkan skema cabang.
Mempromosikan perubahan Anda
Saat Anda yakin dengan perubahan Anda, promosikan ke branch upstream. Terapkan perubahan skema yang sama dengan yang Anda validasi dev/alex ke cabang Anda development , lalu sebarkan kode aplikasi Anda. Alur kerja ini memastikan perubahan skema Anda diuji dalam isolasi sebelum mencapai lingkungan bersama.
Reset dan mulai dari awal
Ketika Anda siap untuk memulai pekerjaan baru, reset cabang pribadi Anda agar tetap sinkron dengan development, yang mungkin memiliki perubahan dari pengembang lain. Ini memberikan Anda permulaan baru dari dasar bersama saat ini.
Navigasi ke cabang Anda dev/alex dan klik Reset dari induk. Modal reset mengonfirmasi bahwa semua database dan peran akan diganti dengan data terbaru dari development. Tindakan ini tidak dapat dibalik, jadi pastikan Anda telah mempromosikan perubahan apa pun yang ingin Anda simpan sebelum mengonfirmasi.
Cabang Anda sekarang cocok persis dengan development, siap untuk tugas Anda berikutnya.
Praktik terbaik
-
Gunakan penamaan yang konsisten:
dev/<name>Ikuti pola untuk cabang pengembang. -
Reset secara teratur: Jaga agar cabang Anda tetap sinkron
developmentuntuk menghindari penyimpangan. - Lindungi produksi: Menggunakan cabang yang dilindungi untuk mencegah perubahan yang tidak disengaja