Mengapa beberapa proyek open source tidak menerima permintaan tarikan, tetapi hanya mengirim email file tambalan

16

Mengapa beberapa proyek open source tidak menerima permintaan tarikan, tetapi membutuhkan kontributor untuk file tambalan email saja? mis. Git Walaupun mereka mempublikasikan kode di github atau hosting scm lain yang didistribusikan. Ini tidak interaktif atau nyaman untuk mengirim file tambalan. File patch adalah cara kuno. Permintaan tarik bersifat interaktif. Orang lain juga dapat berdiskusi.

linquize
sumber
1
Mencari apa "tarik permintaan" itu (tidak pernah menggunakan git dan itu tidak umum untuk semua SCM), tampaknya Anda mengatakan, "Hei, saya mendapat saya perubahan di sini!" Orang lain dapat mengambilnya dari Anda jika mereka mau dan memeriksanya. Apakah ini berfungsi jika Anda offline? Jika tidak, itu akan menjadi alasan yang bagus untuk memilih tambalan email.
Edward Strange
1
@CrazyEddie: github mengirim (atau dapat mengirim) email ke pengelola proyek ketika permintaan tarik diajukan. Email itu berisi deskripsi permintaan tarik, ditambah daftar komitmen dan file yang diubah. Jelas Anda harus online untuk menerima email itu dan mengambil komitmen, tetapi itu juga berlaku untuk patch email.
John Bartholomew
Tambalan didukung secara universal. Permintaan tarik khusus untuk vendor. Mengapa Anda berharap pengelola menerima mereka?
Anonim

Jawaban:

17

Itu tergantung pada siapa yang akan bertanggung jawab menerima permintaan penarikan Anda.

Jika Linus Torvalds , ya ... lebih baik tambalan lama yang baik :

Saya tidak melakukan permintaan tarik github.

github membuang semua informasi yang relevan, seperti bahkan memiliki alamat email yang valid untuk orang yang meminta saya untuk menarik .
Diffstat juga kurang dan tidak berguna.

Git hadir dengan modul pembuatan pull-request yang bagus, tetapi github malah memutuskan untuk menggantinya dengan versi mereka yang benar-benar lebih rendah.
Sebagai hasilnya, saya menganggap github tidak berguna untuk hal-hal semacam ini.

Tidak masalah untuk hosting , tetapi permintaan tarik dan pengeditan komit online, hanyalah sampah murni.
Saya sudah memberi tahu orang-orang github tentang kekhawatiran saya, mereka tidak menganggapnya penting, jadi saya menyerah. Jangan ragu untuk membuat laporan bug ke github.

Dia menjelaskan:

Agar saya dapat menarik dari github, Anda perlu:

  • (a) membuat permintaan tarikan nyata, bukan omong kosong yang rusak yang dilakukan github ketika Anda memintanya untuk meminta tarikan:
    • penjelasan nyata ,
    • alamat email yang tepat ,
    • shortlog yang tepat , dan
    • diffstat yang tepat .
  • (B) karena identitas github adalah acak, saya berharap permintaan tarik menjadi tag yang ditandatangani , sehingga saya dapat memverifikasi identitas orang yang dimaksud.

Saya juga menolak untuk menarik komitmen yang telah dibuat dengan antarmuka web github.
Sekali lagi, alasan untuk itu adalah bahwa cara kerja antarmuka web github, komit itu selalu omong kosong murni.
Komit dilakukan pada github selalu memiliki deskripsi yang sama sekali tidak terbaca, karena github komit membuat hal tidak melakukan apa pun dari hal yang paling sederhana bahwa orang-orang kernel harapkan dari pesan komit:

  • tidak ada "deskripsi satu baris pendek di baris pertama"
  • tidak ada bungkus kata yang waras dari deskripsi panjang yang Anda ketikkan: pesan github commit cenderung (jika mereka memiliki deskripsi sama sekali) satu baris panjang yang tidak dapat dibaca.
  • tidak ada sign-off dll yang kami perlukan untuk pengiriman kernel.

github dapat membuatnya mudah untuk menulis pesan komit yang baik dan menegakkan "oneliner untuk shortlog dan gitk, penjelasan lengkap untuk log lengkap".
Tapi github tidak.
Sebagai gantinya, antarmuka github "commit on the web" adalah satu bidang entri teks yang mengerikan dan sama sekali tidak ada cara yang waras untuk menulis pesan yang tampak bagus.

Ketika ditantang di area teks untuk melakukan pesan:

@torvalds UI komit GitHub menyediakan area teks untuk pesan komit.
Ini mendukung baris baru dan membuatnya mudah untuk melakukan komit yang diformat dengan baik :)

Tidak, tidak.
Apa yang didukungnya adalah menulis garis panjang yang belum Anda ketahui berapa lama mereka.
Area teks tidak melakukan jeda baris untuk Anda, dan Anda tidak memiliki cara untuk menilai kemana jeda baris akan pergi.

Dengan kata lain, memang sangat sulit untuk melakukan "pesan komit yang diformat dengan baik".
Itu juga tidak menerapkan model sepele "oneliner untuk shortlog"
, sehingga pesan komit sering berakhir seperti omong kosong total dalam shortlog dan di gitk.

Jadi github commit UI seharusnya

  • pisahkan jendela teks satu baris "shortlog", sehingga orang tidak dapat mengacaukannya.
  • beberapa cara untuk benar-benar melakukan kata-waras pada tanda standar 72-kolom.
  • pengingat tentang pengunduran diri dll yang diperlukan beberapa proyek untuk alasan spesifik proyek atau bahkan hukum.
VONC
sumber
5
atau versi pendek; dia yang memiliki proyek dapat menjalankannya sesuai keinginan mereka. Jika mereka bersikeras salinan perubahan siput surat maka itu adalah cara Anda harus mengirimkannya (terbelakang seperti itu).
Ken Henderson
3
Jika komit tidak memenuhi persyaratan pemilik proyek, ia dapat memilih dan kemudian mengubah komit untuk apa yang diinginkannya. Penting untuk menghargai kontribusi yang dibuat oleh pengembang lain. Sangat disayangkan jika pemilik proyek menolak kontribusi hanya karena tidak memenuhi format komitmen.
linquize
1
@linquize Proyek open source biasanya tidak memiliki tenaga manusia. Waktu 'cherry-pick & amend' itu bisa dihemat.
lemah
1
"Menulis garis panjang yang belum Anda ketahui berapa lama mereka." Nah itu tampaknya sudah dipecahkan, sekarang memperingatkan Anda cukup keras dari baris pertama yang terlalu panjang, dan memiliki dua kotak teks terpisah untuk pesan pendek dan rinci.
heltonbiker
1
Linus mengeluh tentang implementasi github, tetapi itu tidak berarti bahwa permintaan tarikan buruk secara umum. Sebenarnya, ini benar-benar dimulai kembali untuk mengirim file tambalan surat alih-alih menggunakan antarmuka web interaktif yang bagus yang bekerja langsung dengan git alih-alih mengimpor / mengekspor file
Mike76