cari

Rumah  >  Soal Jawab  >  teks badan

`Github` 上的 `pull request` 与 `Git` 的 `pull` 有关系么?

之前用 SAE 的时候学了点 svn,后来发现还是 Git 先进,再后来就把注册许久不用的 Github 账号拿出来捣鼓,结果对 pull request 很迷惑。

Update:
[上一秒] pull 不是拉么?怎么地想也感觉是 push request 才对。
[下一秒] 哦!对作者来说是 pull 。。。

那就是两者一点都不搭边咯,一个是 CLI 的命令,一个是 Github 上概念性的东西。

PHPzPHPz2877 hari yang lalu856

membalas semua(2)saya akan balas

  • 仅有的幸福

    仅有的幸福2017-04-28 09:08:25

    Biar saya lebih jelas jawapan dan perbincangan sebelum ini adalah palsu dan tidak menunjuk kepada kebenaran.

    permintaan tarik dan git pull pada Github bukanlah tidak berkaitan sepenuhnya, tetapi hubungan yang paling dekat dengannya ialah perintah lain git request-pull.

    Mari kita bercakap tentang penjelasan konsep dahulu. Mungkin kebanyakan orang (termasuk subjek) akan faham permintaan tarik seperti ini:

    Saya menyerahkan permintaan tarik untuk menyepadukan perubahan saya ke hulu (biasanya sumber garpu anda)

    Dalam kes ini, rasanya permintaan tolak sepatutnya menjadi yang paling sesuai, kerana tindakan ini sepenuhnya inisiatif saya!

    Walau bagaimanapun, pemahaman ini mengabaikan premis: Adakah anda mempunyai kebenaran untuk menolak ke hulu? Dalam erti kata lain, bolehkah anda menulis huluan terus?

    Ini terbahagi kepada dua situasi (bersamaan dengan dua aliran kerja berasaskan Git):

    1. Jika anda mempunyai kebenaran - maka anda tidak perlu permintaan garpu & tarik Memandangkan pengarang telah memberi anda kebenaran, anda boleh mengklon dan mengendalikannya sebagai repo anda sendiri.
    2. Tiada kebenaran - kerana tiada kebenaran, bagaimana saya boleh mengatakan permintaan tekan?

    Akhirnya, salah faham ini berpunca daripada kekurangan pemahaman yang lengkap tentang cara aliran kerja permintaan tarik berfungsi. Penerangan yang betul tentang tindakan permintaan tarik hendaklah seperti ini:

    Saya memulakan permintaan (untuk Github, ia adalah permintaan HTTP yang memanggil API yang sepadan, dan kemudian Github melaksanakannya pada bahagian belakang git request-pull, lihat di bawah untuk butiran), permintaan ini (permintaan dalam permintaan HTTP ) ialah permintaan untuk (meminta dalam permintaan tarik) pengarang hulu untuk menarik (permintaan tarik masuk) berubah dari garpu saya.

    Ini adalah pemahaman yang betul.

    Akhir sekali, mari bercakap git request-pull. Apabila anda membuat permintaan permintaan tarik, subperintah git request-pull sebenarnya dilaksanakan di belakang tabir. Tandatangan (utama) subperintah ini ialah:

    bash$ git request-pull <start> <url> [<end>]
    

    Arahan ini menjana ringkasan perubahan (dalam komit) dan URL yang digunakan untuk mengambilnya. Ringkasan adalah output kepada stdout dalam teks biasa format tetap, yang anda boleh ubah hala dan menulis kod untuk pemprosesan seterusnya. Beginilah cara Github menganalisis setiap permintaan tarik, supaya anda boleh melihat komitmen, masa, pengarang dan maklumat lain yang sepadan.

    Jika pengarang huluan memilih untuk menerima permintaan selepas menerima permintaan tarik, Github akan memanggil git pull untuk menarik kod daripada alamat yang ditentukan (termasuk dalam maklumat yang dijana oleh git request-pull). Penulis huluan secara semula jadi mempunyai kebenaran untuk menulis ke repo huluan, jadi proses yang lengkap dapat direalisasikan.

    Adalah disyorkan untuk membaca manual Git rasmi, terutamanya bab ini: Git Diedarkan - Menyumbang kepada projek saya jamin anda akan mendapat banyak manfaat selepas membacanya.

    balas
    0
  • 世界只因有你

    世界只因有你2017-04-28 09:08:25

    Ia adalah perpustakaan awam, bukan?

    balas
    0
  • Batalbalas