Git Fork와 Pull Request 이해하기
원본 저장소를 Fork한 뒤 브랜치를 추적하고 변경을 Push해 Pull Request로 전달하는 협업 흐름과 흔한 브랜치 누락 문제를 정리합니다.

원본 저장소에 직접 쓰기 권한이 없다면 저장소를 내 계정으로 Fork하고 작업 브랜치의 변경을 Pull Request로 제안할 수 있다.
Fork와 Clone의 차이
Fork는 원격 저장소를 GitHub 계정 안에 복제하고, Clone은 원격 저장소의 작업 사본을 내 컴퓨터로 내려받는다.

git clone <fork-url>
git remote add upstream <original-url>
git remote -v
원격 브랜치가 보이지 않았던 이유
Fork에 기본 브랜치만 포함했다면 원본의 다른 브랜치는 내 Fork의 origin에 없다. 이때는 원본을 upstream으로 등록하고 필요한 브랜치를 가져올 수 있다.

git fetch upstream
git switch --create <branch> --track upstream/<branch>
Pull Request 보내기
git add <files>
git commit -m "Describe the change"
git push -u origin <branch>

원본 저장소를 base로, 내 작업 브랜치를 compare로 설정해 Pull Request를 만든다. 생성 전에는 브랜치 방향과 의도하지 않은 파일이 포함되지 않았는지 확인한다.