G9901/yii2-gftp
은 hguenot/yii2-gftp
의 포크입니다. 지금 로컬에서 수정한 다음 git push
을 수정했지만 hguenot/yii2-gftp
은 커밋을 받지 못했습니다. 그리고 hguenot/yii2-gftp
는 웹페이지 pull request
에서 바로 할 수 있는데 commit
는 왜 클라이언트 측에서는 제출할 수 없는 걸까요?
업스트림에 제출할 수 없으면 원본 작성자가 수정 사항을 알 수 없고 병합할 수 없습니다. 그런데 문제는 github.com 웹 페이지에 커밋을 제출할 수 있다는 것입니다.
이제 github.com 웹페이지에 제출되었으며 다시 다음과 같습니다. https://github.com/hguenot/yii2-gftp/pull/5
G9901 wants to merge 4 commits into hguenot:master from G9901:master
git push를 사용하면 기본적으로 원본에 해당하는 원격 창고로 푸시되므로 업스트림에서 커밋을 얻을 수 없습니다. 먼저 hguenot/yii2-gftp를 작성해야 합니다. git 권한, 즉 이 프로젝트에 참여했습니다. 두 번째는 git push 업스트림을 명시적으로 푸시하는 것입니다. 프롬프트는 hguenot/yii2-gftp.git에 쓸 수 있는 권한이 없음을 나타냅니다. 풀/요청은 포크 프로젝트가 수정 사항을 제출하고 병합하는 메커니즘으로, 포크 프로젝트가 원본 프로젝트에 권한이 없는 수정 사항을 제출하는 데 적합합니다.
포크와 업스트림은 서로 다른 저장소이므로 포크로 푸시해도 업스트림에 알릴 수 없습니다. 이는 전제이자 git의 기본 개념 중 하나입니다. 분명히 이에 대해 매우 모호합니다
에만 의존하여 직접 완료할 수 없습니다(불가능하지는 않지만 약간 복잡합니다). 다행히도 GUI를 사용하는 경우 github에 도움이 되는 앱이 있습니다. CLI를 사용하는 경우 1) Mac에서는
을 사용하고, 2) Linux에서는git request-pull
brew install hub
일반 사용자의 경우 웹과 앱에서 github 작동 방법을 배우는 것만으로도 충분합니다. CLI를 사용하려면 특정 기술과 탐색 기능이 필요합니다.hub/git pull-request