🧪 Panduan Cabang Pengembangan
Ingin mencoba fitur terbaru sebelum dirilis resmi? Cabang dev memuat peningkatan mutakhir dan fitur eksperimental yang akhirnya masuk rilis utama.
Cabang dev eksperimental dan dapat berisi bug, fitur belum lengkap, atau perubahan tidak kompatibel. Gunakan hanya jika siap menghadapi ketidakstabilan dan ingin membantu Libre WebUI.
🎯 Apa Itu Cabang Dev?
Cabang pengembangan (dev) menguji fitur baru sebelum digabung ke main. Isinya:
- Fitur terbaru yang belum stabil
- Perbaikan bug yang diuji
- Peningkatan eksperimental antarmuka dan fungsi
- Optimasi kinerja dalam pengembangan
🚀 Menggunakan Cabang Dev
Penyiapan Docker (Disarankan)
Berkas Compose pengembangan memasang soket Docker host sehingga Work aktif saat Docker tersedia. Kontainer tugas berjalan pada layanan host dan muncul di docker ps. Di Linux, tetapkan DOCKER_GID dalam .env.
Dengan Ollama eksternal:
# Clone the repository
git clone https://github.com/libre-webui/libre-webui.git
cd libre-webui
# Switch to dev branch
git checkout dev
# Start the dev image with external Ollama
docker compose -f docker-compose.dev.external-ollama.yml up -d
Docker sederhana:
# Use the dev branch image
docker run -d -p 3000:3001 -v libre-webui:/app/backend/data --name libre-webui-dev --restart always ghcr.io/libre-webui/libre-webui:dev
Dari Sumber
# Clone and switch to dev branch
git clone https://github.com/libre-webui/libre-webui.git
cd libre-webui
git checkout dev
# Install dependencies
npm install
# Start development server
npm run dev
Menguji Work
- Jalankan Docker dan pastikan
docker infoberhasil sebagai pengguna backend. - Jalankan Libre WebUI dari sumber dengan
npm run dev. - Masuk sebagai administrator.
- Pilih Work dan model Ollama, Ollama Cloud, atau plugin yang mendukung alat.
Jalankan tes penyedia dan kebijakan kontainer:
npm run test:work
Tes memvalidasi kebijakan Docker, batas jalur, siklus hidup, kapasitas, dan adaptor alat OpenAI-compatible, Anthropic, serta Gemini. Lihat Work: Ruang Kerja Terisolasi.
🔄 Tetap Terbaru
Cabang dev sering diperbarui:
# Update your local dev branch
git pull origin dev
# Refresh the dev Compose stack
docker compose -f docker-compose.dev.external-ollama.yml pull
docker compose -f docker-compose.dev.external-ollama.yml up -d
# Or restart simple Docker
docker pull ghcr.io/libre-webui/libre-webui:dev
docker stop libre-webui-dev && docker rm libre-webui-dev
docker run -d -p 3000:3001 -v libre-webui:/app/backend/data --name libre-webui-dev --restart always ghcr.io/libre-webui/libre-webui:dev
🐛 Menemukan Bug? Bantu Kami!
Laporan Anda sangat berharga.
Sebelum Melapor
- Cari GitHub Issues agar tidak duplikat
- Coba versi stabil untuk memastikan bug hanya di dev
- Pastikan bug dapat diulang
Melaporkan Bug
Sertakan:
**Environment:**
- Branch: dev
- Version: [git commit hash or date]
- OS: [Windows/macOS/Linux]
- Browser: [Chrome/Firefox/Safari version]
- Setup: [Docker/Source/etc.]
- Docker: [version and whether `docker info` succeeds, for Work issues]
- Work model/provider: [exact route, when applicable]
**Bug Description:**
Clear description of what went wrong
**Steps to Reproduce:**
1. Go to...
2. Click on...
3. See error...
**Expected Behavior:**
What should have happened
**Actual Behavior:**
What actually happened
**Screenshots/Logs:**
[If applicable, add screenshots or error logs]
**Work Activity:**
[Relevant tool call/result or preview output, with secrets removed]
Mendapatkan Hash Commit
# Find your current dev branch commit
git rev-parse HEAD
# Or get a short version
git rev-parse --short HEAD
🏆 Kontribusi dan Pengakuan
Menggunakan dev menjadikan Anda bagian komunitas penguji. Kontribusi diakui melalui:
Pengakuan bagi Kontributor
- Daftar di CONTRIBUTORS.md
- Catatan rilis, atribusi penulis bersama, dan ucapan terima kasih
Kontributor Saat Ini
- rob - Pemelihara Proyek
- jm - Peningkatan Akses Jaringan
- Daftar lengkap
Ingin Berkontribusi Kode?
- Fork repositori
- Buat cabang dari
dev:git checkout -b feature/amazing-feature dev - Buat perubahan
- Kirim Pull Request ke
dev
Lihat Panduan Kontribusi dan Community Charter.
Pemeriksaan Pull Request
Setiap Pull Request menjalankan Format & Lint. Pekerjaan memeriksa format, lint frontend/backend, tipe TypeScript, tes paket/regresi, dan Playwright. Hasil kegagalan peramban diunggah untuk debug.
Electron Dev Build mengemas artefak macOS, Windows, Linux. Build macOS mempertahankan tanda tangan ad-hoc tanpa kredensial; alur tidak menerima Developer ID atau notarisasi.
Docker Build Test and Push membangun image amd64 dan arm64. Build tidak masuk registry, mengirim digest, atau menerbitkan manifest multiarsitektur.
Jalankan pemeriksaan lokal:
npm run format:check
npm run lint
npm run test:package
npm run test:e2e
⚠️ Catatan Penting
Keamanan Data
- Cadangkan data sebelum beralih ke dev
- Berkas Work berada di volume Docker
libre-work-*; cadangkan terpisah sebelum tes destruktif - Gunakan volume Docker terpisah:
# Use different volume name for devdocker run -d -p 3000:3001 -v libre-webui-dev:/app/backend/data --name libre-webui-dev ghcr.io/libre-webui/libre-webui:dev
Masalah Potensial
- Perubahan tidak kompatibel dapat memerlukan konfigurasi
- Fitur mungkin belum lengkap
- Kinerja dan tampilan dapat berubah
Kapan Memakai Stabil
Kembali ke main jika membutuhkan keandalan, menemui banyak bug, atau menginginkan pengalaman teruji:
# Switch back to stable
git checkout main
docker compose -f docker-compose.external-ollama.yml pull
docker compose -f docker-compose.external-ollama.yml up -d
🌟 Bergabung dengan Komunitas
Siap membantu membentuk masa depan Libre WebUI? 🚀
Tes, umpan balik, dan kontribusi Anda meningkatkan pengalaman semua pengguna.