Saya tidak yakin, tetapi saya memiliki memori samar-samar untuk membuat permintaan tarik github dengan "Masalah 4" atau sesuatu dalam judul, dan secara otomatis melekat pada Masalah 4 dalam proyek yang saya kirimkan. Saya mencobanya lagi baru-baru ini dan tidak berhasil - itu malah menciptakan masalah baru. Saya tidak melihat opsi seperti "Lampirkan ke masalah" di halaman permintaan tarik baru, atau "Buka permintaan tarik baru untuk masalah ini" di halaman masalah. Apakah ada cara untuk melakukan ini, untuk membantu pemilik proyek menjaga halaman Isu mereka bersih dan menghindari duplikasi?
Sunting : Untuk memperjelas, saya tahu bahwa membuat permintaan tarik selalu menciptakan masalah baru . Saya ingin melampirkan permintaan tarik ke masalah yang ada .
sumber
Jawaban:
Proyek "hub" dapat melakukan ini:
https://github.com/defunkt/hub
Di repositori dan cabang tempat Anda ingin mengirim permintaan tarik dari:
Ini menggunakan API GitHub, dan melampirkan permintaan tarik untuk cabang saat ini ke nomor edisi 4 yang ada.
EDIT: Komentar oleh @atomicules: Untuk memperluas jawaban dengan @MichaelMior contoh lengkapnya adalah:
sumber
brew install hub
menginstal dengan homebrewhub pull-request URL_TO_ISSUE
, maka itu berhasil bagi saya. Saya ingin tahu apakah-i ISSUE_NUMBER
hanya berfungsi jika masalahnya ada di repositori yang sama (yaitu, bukan garpu)hub pull-request -b USERNAME_OF_UPSTREAM_OWNER:UPSTREAM_BRANCH -h YOUR_USERNAME:YOUR_BRANCH URL_TO_ISSUE
Menambahkan permintaan tarik ke masalah hulu yang ada adalah mudah dengan asumsi Anda melakukan forked menggunakan cara github normal .
Cukup referensi masalah dalam pesan komit Anda menggunakan salah satu kata kunci yang didukung :
Misalnya: "komit ini memperbaiki # 116"
Teks yang merujuk masalah tidak perlu muncul di baris subjek komit Anda.
Dorong komit Anda ke repo github Anda dan permintaan tarik akan ditambahkan secara otomatis ke masalah ini.
Catatan: Meskipun tidak diperlukan, Anda sangat disarankan untuk melakukan apa pun yang akan menjadi bagian dari permintaan tarikan ke cabang terpisah khusus untuk masalah itu, karena komitmen di masa depan pada cabang itu akan ditambahkan ke permintaan tarikan (otomatis oleh github ). Jadi, jika Anda tidak membuat cabang terpisah, meninggalkannya di master, dan kemudian terus berkembang, maka semua komitmen Anda yang tidak terkait untuk menguasai akan ditambahkan ke permintaan tarik Anda.
sumber
Anda dapat membuat Permintaan Tarik dari Masalah yang ada dengan API Permintaan Tarik :
Ini menciptakan permintaan tarik:
technoweenie
di proyekfaraday
(https://api.github.com/repos/ technoweenie / Faraday / tarikan)synchrony
cabang dismparkes
'fork ( 'kepala': ' smparkes : sinkron ')master
cabang dalamtechnoweenie
garpu ("base": " master ")smparkes
( --user " smparkes ")sumber
--user "smparkes:password"
untuk--user "smparkes"
diminta kata sandi Anda secara interaktif.Alat lain yang mungkin adalah situs web Issue2Pr yang mengubah masalah Anda menjadi Tarik Permintaan.
Ini sangat sederhana dan efektif!
Sumber:
sumber
Jawaban lain ini menjelaskan cara menggunakan cURL (
curl
) untuk membuat Permintaan Tarik dari Masalah melalui API GitHub . Berikut cara melakukannya menggunakan HTTPie (http
), yang menghasilkan perintah yang lebih mudah dibaca dan lebih mudah diedit:Kemudian ketikkan kata sandi GitHub Anda saat diminta.
Contoh yang dijelaskan
Anda telah masuk ke GitHub dengan nama pengguna smparkes dan pemburu kata sandi2 . Anda melihat technoweenie ‘s repo faraday , memikirkan sesuatu yang harus diubah, dan membuat Isu repo yang untuk itu, Issue # 15 . Kemudian, Anda menemukan bahwa tidak ada orang lain yang membuat perubahan yang Anda usulkan, dan Anda juga punya waktu untuk melakukannya sendiri. Anda membayar faraday ke akun Anda sendiri , lalu menulis perubahan Anda dan mendorongnya ke garpu Anda di bawah cabang bernama syncy . Anda pikir technoweenie harus menarik perubahan itu ke tuancabang dari repo-nya. Ini adalah perintah yang akan Anda tulis untuk mengubah Masalah Anda sebelumnya menjadi Permintaan Tarik untuk situasi ini:
Sekarang Masalah # 15 adalah Permintaan Tarik.
sumber
jika Anda menggunakan 2-faktor-auth dengan github Anda harus memberikan tajuk authtoken sebagai permintaan:
sumber
Anda juga dapat menggunakan Gub untuk mengirim permintaan tarik untuk masalah Anda.
Ini juga membantu Anda menggunakan gaya fork / pull-request yang tepat.
Edit: 10/5/2013
Untuk meminta Gub mengirimkan permintaan tarik untuk masalah # 123, Anda harus menjalankan yang berikut:
Ini akan membuat masalah cabang baru-123. Setelah Anda selesai menangani masalah ini, jalankan:
Voila!
Catatan: Saya adalah penulis permata Gub.
sumber
Alih-alih melakukan itu di sisi klien (dengan
hub
, seperti pada jawaban Christian Oudard ), Anda sekarang (Februari 2020) dapat melakukannya di sisi server (github.com)Lihat " Lihat dan tautkan masalah dan tarik permintaan dari bilah samping "
Dokumentasi :
Dan ada API pencarian dengan fitur itu.
sumber
Menggunakan alat git-hub , Anda bisa melakukan ini dengan:
$> git hub pull attach 123
Ini akan mengubah masalah # 123 menjadi permintaan tarik # 123, sehingga mempertahankan semua diskusi tentang masalah ini di satu lokasi.
sumber
Jika Anda telah mengaktifkan 2FA, Anda dapat menggunakan pass token dengan HTTPie:
Ini akan menggunakan cabang
issue_2
untuk mengubah masalah # 2 menjadi permintaan tarik.sumber