Apa cara yang benar / sopan untuk mewarisi dari proyek open-source yang ditinggalkan untuk proyek open-source baru?


13

Tim saya baru saja mencoba menghubungi beberapa orang dari proyek open source lama yang dihosting di code.google.com. Kami mengatakan kepada mereka bahwa kami ingin bergabung dengan proyek mereka dan berkomitmen untuk itu - setidaknya untuk beberapa cabang - tetapi tidak ada yang menanggapi kami. Kami mencoba semua orang, pemilik dan pengangkut; tidak ada yang aktif, dan tidak ada yang menjawab.

Tetapi kami memiliki beberapa kode untuk dikomit dan kami benar-benar ingin melanjutkan pekerjaan pada proyek itu. Jadi kita perlu membuat proyek baru. Kami datang dengan nama yang dekat tapi bukan duplikat dari nama proyek yang ingin kami warisi. Bagaimana seharusnya kita melakukan komit pertama kita, dan seperti apa pesan komit itu? Haruskah kita menyalin kode mereka ke repositori kita dengan komentar seperti "kami mewarisi kode ini, kami menemukannya di sini di bawah lisensi ini dan itu ... sekarang kami memutakhirkannya ke lisensi yang lebih ketat ini ..."? Atau haruskah kita hanya menggunakan kode mereka sebagai komit pertama kita, dengan pembaruan yang mengatakan "kami mewarisi dari ... kami membuat perubahan ini dan itu ..."?


7
Kecuali jika Anda mendapatkan izin dari proyek asli, tergantung pada lisensi asli Anda kemungkinan tidak akan dapat membuatnya menjadi lisensi yang kurang ketat. Jika itu adalah lisensi yang cukup permisif untuk memungkinkannya, maka mungkin tidak banyak yang perlu untuk pindah ke lisensi yang lebih permisif.
Matthew Scharley

Jawaban:


13

Idealnya Anda akan memotongnya di Google Code, yang akan menyimpan semua sejarah lama. Saya tidak tahu apakah ini didukung secara eksplisit pada Google Code, tetapi jika proyek lama menggunakan git sebagai kontrol versi, Anda dapat melakukannya secara manual dengan mengkloning proyek lama ke direktori lokal, memodifikasi originremote untuk menunjuk ke yang baru repositori, lalu dorong salinan lokal Anda.

Saya yakin metode serupa dapat digunakan dengan subversi ( svnsyncmungkin?) Tetapi saya tidak memiliki pengalaman praktis dengan subversi sehingga saya tidak dapat berkomentar di sana.


2
kode google mendukung Mercurial, tetapi tidak git. Untuk mercurial prosedurnya sangat mirip, cukup modifikasi defaultalias di .hg\hgrc.
Wim Coenen

@ Terima kasih atas informasinya. Saya benar-benar belum menggunakan Google Code sama sekali, hanya memberikan sebanyak mungkin info tentang apa yang saya ketahui.
Matthew Scharley

8

Yang penting adalah apakah lisensi kode asli dan apa yang memungkinkan Anda lakukan. Satu hal yang harus Anda sangat berhati-hati adalah mengubah lisensi karena Anda mungkin tidak diizinkan melakukannya - ingat Anda tidak memiliki hak cipta.

Tapi, dengan anggapan bahwa semuanya dalam urutan sempurna maka pesan komit awal dapat "Diimpor 2011-02-25 dari http: // .... versi XYZ", serta penjelasan yang menonjol dalam file README.txt.

Sangat jelas tentang apa yang telah Anda lakukan, dan jika mungkin tuliskan kode Anda menggunakan kode asli sebagai pustaka. Ini membuatnya lebih mudah untuk memisahkan masalah.


8

Ini sebenarnya adalah kode google FAQ , lihat "Apa yang harus saya lakukan jika saya ingin mengambil alih proyek yang tampaknya ditinggalkan oleh pemiliknya?".

Tampaknya Anda dapat mengambil alih proyek yang ditinggalkan dengan meminta Google dengan baik.


4

Jika Anda menghubungi proyek lama maka saya tidak berpikir mereka bisa mengeluh, cukup terbuka dan jelas tentang apa yang Anda lakukan dan tidak menghargai pekerjaan orang lain. Saya mungkin akan mencoba menjelaskan situasinya di situs web Anda dan di pesan komit pertama. Juga sopan untuk memastikan impor kode awal persis sama dengan proyek sebelumnya, jadi semua perubahan ada dalam log komit.

Seperti yang orang lain katakan, Anda hanya dapat mengubah lisensi menjadi yang kompatibel, dan Anda TIDAK BISA mengubah pemilik hak cipta, bahkan jika Anda mengubah lisensi. Penting untuk menyimpan semua nama pemilik hak cipta yang ada di sana dan di semua file yang mereka kerjakan.



Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.