- Pada pertengahan 2019, saat sedang mencari pekerjaan, harus memilih antara Google Goteam dan Sourcegraph
- Alasan memilih Sourcegraph adalah karena budayanya yang memungkinkan membangun semuanya secara terbuka
- Semua dokumen pada dasarnya bersifat publik, dan RFC teknis serta produk, PR/FAQ, dan lainnya disimpan di folder Google Drive publik
- Seluruh implementasi produk dilakukan di repositori GitHub publik
- Kini repositori
sourcegraph/sourcegraph telah dialihkan menjadi privat
- Ini merupakan keputusan yang merusak budaya menarik yang dimiliki Sourcegraph
- Sourcegraph menyisakan snapshot publik bernama
sourcegraph/sourcegraph-public-snapshot
Menjaga referensi tetap hidup
- Selama bekerja di Sourcegraph, banyak tulisan dipublikasikan di blog engineering
- Banyak tulisan menggunakan tautan ke kode publik terkait sebagai referensi
- Sekarang semua tautan tersebut rusak
- Ada ungkapan, "URI yang keren tidak berubah"
- Sedang berupaya menjaga sebanyak mungkin informasi agar tautan tidak tiba-tiba rusak
sourcegraph/sourcegraph di-fork menjadi efritz/sourcegraph
- Fork tidak mewarisi pull request, dan commit yang tidak dirujuk langsung oleh branch tidak akan terlihat
- Menurut dokumentasi GitHub, fork tetap ada meskipun repositori publik dialihkan menjadi privat
- Namun, jika repositori asal menjadi privat, commit di luar branch
main bisa menghilang
Mengais commit terkait
- Sebuah program Go dijalankan untuk menemukan semua commit
- Program ini menghasilkan 2.645 file metadata pull request
jq digunakan untuk membaca payload JSON dan mengekstrak data
- File
pr_ids.txt, commits.txt, dan replace_pairs.txt dibuat
- Program kedua dijalankan untuk mencantumkan commit yang tidak di-merge dari setiap pull request
- Program ini menambahkan commit ke file
commits.txt
Membawa commit ke jaringan repositori baru
- Branch yang berisi setiap SHA terkait dibuat lalu dibawa ke fork
- Skrip Bash digunakan untuk menjalankan operasi git secara berurutan
Menulis ulang referensi
- Kini setiap referensi dapat ditautkan ke target di fork
- Proses otomatis diimplementasikan menggunakan
xargs
- Referensi commit langsung ditulis ulang ke fork, dan referensi pull request ditulis ulang ke commit hasil merge
Ringkasan GN⁺
- Peralihan Sourcegraph menjadi privat berdampak besar pada budaya open source
- Banyak tautan referensi di blog engineering rusak, dan dibutuhkan banyak upaya untuk mempertahankannya
- Referensi ditulis ulang dan commit dipertahankan dengan menggunakan fork GitHub dan skrip
- Artikel ini menekankan keberlanjutan proyek open source dan pentingnya tautan referensi
1 komentar
Komentar Hacker News
Pendapat CEO Sourcegraph:
Pendapat pengguna lain:
Pendapat pengguna lain:
Pendapat pengguna lain:
Pendapat pengguna lain:
Pendapat pengguna lain:
Pendapat pengguna lain:
Pendapat pengguna lain:
Pendapat pengguna lain:
Pendapat pengguna lain: