Administrator@USER-20140 /D/website/flxx2/basic/vendor/g9901/yii2-gftp (master)
$ git remote -v
origin git@github.com:G9901/yii2-gftp.git (fetch)
origin git@github.com:G9901/yii2-gftp.git (push)
upstream https://github.com/hguenot/yii2-gftp.git (fetch)
upstream https://github.com/hguenot/yii2-gftp.git (push)
G9901/yii2-gftp
是我 fork 来自 hguenot/yii2-gftp
,我现在在本地修改了,然后git push
,可 hguenot/yii2-gftp
并没有收到提交。而我发现在 hguenot/yii2-gftp
是可以直接在网页上进行 pull request
然后commit
,为什么不能客户端提交?
Administrator@USER- /D/website/flxx2/basic/vendor/g9901/yii2-gftp (master)
$ git push upstream
Username for 'https://github.com': G9901
Password for 'https://G9901@github.com':
remote: Permission to hguenot/yii2-gftp.git denied to G9901.
fatal: unable to access 'https://github.com/hguenot/yii2-gftp.git/': The request
ed URL returned error: 403
无法提交到 upstream ,那么原作者就无法知道有修改,无法操作合并,可问题是我在github.com的网页里面却可以提交 commit,如何才可以在我客户端提交过去。
现在在 github.com 网页上提交了,又变成这样了: https://github.com/hguenot/yii2-gftp/pull/5
G9901 wants to merge 4 commits into hguenot:master from G9901:master
Menggunakan git push akan menolak ke gudang jauh yang sepadan dengan asal secara lalai, jadi hulu tidak boleh mendapatkan komit Jika anda ingin menolak ke hulu, terdapat dua keperluan yang pertama ialah anda telah menulis hguenot/yii2-gftp. git Permissions, iaitu, anda menyertai projek ini. Yang kedua ialah menolak git push upstream secara eksplisit Gesaan menunjukkan bahawa anda tidak mempunyai kebenaran untuk menulis kepada hguenot/yii2-gftp.git. Tarik/Permintaan ialah mekanisme untuk projek garpu menghantar pengubahsuaian dan bergabung, dan sesuai untuk projek garpu menyerahkan pengubahsuaian yang tidak mempunyai kebenaran kepada projek asal.
Fork dan upstream anda adalah repo yang berbeza, jadi push to fork tidak boleh membiarkan huluan tahu; ini adalah premis dan salah satu konsep asas git, jelas anda sangat samar tentang perkara ini
Jangan bercakap tentang baris arahan dahulu Anda mesti tahu bagaimana github mengendalikan permintaan tarik (sudah tentu, anda mesti tahu apa itu permintaan tarik. Untuk maklumat ini, anda boleh pergi ke bantuan github)
Kemudian lihat dokumentasi pada subperintah tarik-permintaan dalam dokumentasi git Pada masa ini anda mula mewujudkan asas teori untuk push to fork kemudian beritahu huluan
Malangnya, permintaan tarik github tidak dapat diselesaikan secara langsung dengan hanya bergantung pada
git request-pull
(tidak mustahil, tetapi ia agak rumit: jika anda menggunakan GUI, maka github mempunyai aplikasi yang boleh membantu anda lakukan perkara ini; jika anda menggunakan CLI, maka 1) anda boleh menggunakanbrew install hub
kemudianhub/git pull-request
di bawah mac, 2) anda boleh menggunakansudo apt-get install github-cli
di bawah linux, 3) windows? Tak pasti, mungkin boleh minta tolong scoopBagi pengguna biasa, cukup belajar mengendalikan github di web dan apl Bermain dengan cli memerlukan kemahiran dan keupayaan penerokaan tertentu.