글쎄, 이것은 내가 생각하기에 상당히 짧은 튜토리얼이며 희망적으로 교훈적인 것입니다.). 내 github에서 사용할 수있는 작은 저장소를 만들어 PR을 보낼 수 있고 동시에 아래에서 남겨 둘 모든 단계를 수행하는 방법을 연습 할 수 있습니다. 다음은 테스트 PR을 수행하는 링크입니다.
https://github.com/CodeLabora/TuPrimerPR
PR을 보내는 데 필요한 단계를 빠르게 나열 해 보겠습니다.
- 포크
- 복제
- 원격수행
- 지사
- 변경
- 추가
- 커밋
- 푸시
- PR
git 명령 줄에서 각각의 옵션을 찾을 수 있도록 영어로 작성했습니다.
포크
포크는 Github 저장소의 자체 버전입니다. 이를 통해 다른 프로젝트의 작업을 복제하고 계정에 보관할 수 있으므로 변경 사항을 잃어 버릴 염려없이 변경할 수 있습니다. 포크를 만들려면 페이지로 이동하여 오른쪽 상단에있는 포크 버튼을 클릭하기 만하면됩니다.
포크가 완료되면 저장소가 계정에 표시되는 것을 볼 수 있습니다.
복제
이제 저장소가 생겼으므로 우리 팀에 복제 할 것입니다. (리눅스를 사용하는 사람들이 나를 따르고 있다고 가정하지만 다른 시스템 사용자를 위해 공식 페이지에서 다운로드 할 수있는 git 버전도 있습니다.
그리고 터미널을 사용하여 다음을 수행합니다.
이를 통해 Github 프로젝트가 포함될 TuPrimerPR이라는 새 폴더가 생깁니다. «cd TuPrimerPR»명령을 사용하여 폴더에 들어가면 포크에있는 파일이 내부에 있음을 알 수 있습니다.
(파일 수는 포크할 때 내 저장소에서 찾은 내용에 따라 달라질 수 있습니다.)
원격수행
이것은 선택적 단계이지만 프로젝트에서 지속적으로 작업 할 때 많은 문제를 방지합니다. Fork는 기본적으로 저장소의 정확한 사본을 생성하지만 생성의 정확한 순간에 생성합니다. 즉, 프로젝트가 계속 진행되면 저장소가 며칠 또는 몇 시간이지나면서 뒤쳐 질 것입니다. "Git remote"를 사용하면 다른 다운로드 지점 (원래 프로젝트)을 지정할 수 있으므로 상위 프로젝트가 업데이트되는 것을 볼 때마다 프로젝트를 업데이트 할 수 있습니다.
상위 프로젝트를 찾으려면 저장소 이름 바로 아래에있는 링크를 사용하기 만하면됩니다. (포크 섹션의 두 번째 이미지 확인). 이 정보를 아래에 추가 할 예정입니다.
이것은 원래 프로젝트입니다 (우리는 상류에 많은 프로젝트를 따라 잡기 위해).
보시다시피»git remote add로 원격을 추가했습니다. »
이를 통해 필요한 경우 프로젝트를 업데이트 할 수 있지만 필요하지 않기 때문에 지금은 사용하지 않을 것입니다. (나중에 또는 필요에 따라 다른 게시물에서 설명하겠습니다)
지사
분기 (또는 분기)를 사용하면 격리 된 환경에서 작업 할 수있는 코드 섹션을 만들 수 있습니다. 즉, 브랜치에서 수행하는 작업은»git merge«가 사용될 때까지 원래 코드에 반드시 영향을주지 않습니다. 또한 Github에서 허용하는 추가 기능으로, 브랜치를 생성 할 때마다 Github는 필요할 때 자동으로 Pull Request의 소스를 생성합니다.
이제 우리는 특별한 브랜치에 있으므로 기여할 수 있는 작업을 할 수 있습니다.
변경
파일 몇 개를 추가해 어떻게 진행되는지 확인하겠습니다.
"touch"를 사용하면 빈 파일을 만들 수 있습니다(존재하지 않는 경우). 이를 통해 우리는 다음 단계로 넘어갈 수 있습니다.
추가
»Git add»를 사용하면 커밋에 파일을 추가 할 수 있습니다 (나중에 설명하겠습니다). 추가 할 수있는 파일을 보려면»git status»명령을 사용할 수 있습니다.
이것으로 우리는 커밋을위한 모든 준비가되어 있습니다.
커밋
커밋은 시간의 표시 (또는 마일스톤)입니다. 프로젝트의 모든 파일에 대한 상태를 정의하고 프로젝트의 시작에서 현재 상태로 가져 오는 데 필요한 변경 사항을 누적합니다. 약간 복잡하게 들리지만 아주 간단합니다. 프로젝트의 계단이라는 점만 기억하세요. »git commit»을 작성하면 커밋 메시지를 작성할 수있는 창이 나타납니다.
텍스트를 완료하고 저장하면 다음과 같은 내용이 표시됩니다.
커밋이 수행하는 작업에 대한 요약이 표시됩니다.
푸시
푸시를 통해 인터넷의 저장소에없는 컴퓨터에있는 모든 커밋을 Github 계정에 업로드합니다. 이렇게하면 Github에서 새 PR을 자동으로 생성 할 수 있습니다.
우리는 우리 지점의 이름을 사용하고 있으며 우리의 사용자 이름과 암호를 요구한다는 것을 주목하십시오. 마지막으로 myImprovement 브랜치가 Github 계정 내에 생성되었음을 보여줍니다. 우리가 브라우저에서 무엇을 성취했는지 봅시다. 😉
PR
보시다시피 "Compare & Pull request"라는 새로운 라인이 생성되었습니다. 이 Github 기능을 통해 간단한 방법으로 PR을 생성 할 수 있습니다. 클릭하여 어떤 일이 발생하는지 확인하겠습니다.
Github는 꽤 똑똑합니다. 보시다시피 커밋의 일부가 제출을 위해 양식에 추가됩니다. 버튼을 클릭하면 🙂 간단합니다.
여분의
이것은 프로젝트의이면에서 PR이 나타나고 관리자는 수락 여부를 결정하거나 더 많은 메시지를 쓸지 결정합니다. 제 경우에는 즉시 수락하겠습니다.
병합이 완료되면 프로젝트의 커밋 로그와 이름을 볼 수 있습니다.
하지만 이제 우리는 문제가 있습니다. 해당 커밋은 우리의 프로젝트에만 있습니다. 우리의 먼 통로를 기억하십니까? 지금이 가치가 있습니다 🙂
마스터 브랜치로 돌아가서 다음을 수행합니다.
이것으로 우리는 원래 프로젝트의 모든 정보를 우리 팀에 다운로드했습니다. 보시다시피 여기에 커밋이 나타납니다. 이제이 모든 작업을 Github 저장소에 저장하여 프로젝트에 이미 추가 한 기여가있는 브랜치를 삭제할 것입니다.
이제 업데이트 된 Github 저장소가 있으므로 브랜치를 삭제할 것입니다. 먼저 브랜치가 메인 브랜치 (마스터) 안에 있는지 확인합니다.
보시다시피 약간의 오류가 있었는데, 삭제하려고 할 때 myImprovement 브랜치에 있었기 때문입니다. 이것은 마스터 브랜치로 돌아가서 수정됩니다.
결론
완료 🙂 그렇게 간단합니다. PR 전송에 대한 Github의 어두운 비밀을 습득 했으므로 이제 다양한 프로젝트에 대한 귀하의 기여를 기대합니다. 그리고 원한다면 내 저장소에 첫 번째 PR을 남겨 둘 수 있습니다. 😉.
나는 수천 가지 Git 혜택을 건드리지 않았습니다 (오조, Github가 아니라) 커널 커뮤니티에 묶여있는 개발자들에게 기대할 수 있듯이 Git은 수백 가지 기능을 갖춘 매우 강력한 도구입니다.
그것이하는 일과 Git의 모든 힘에 대한 더 나은 아이디어를 얻으려면 이것을 적극 권장합니다. 책. git 실력 향상에 많은 도움이 되리라 확신합니다.
인사하고 도움이 되었기를 바랍니다 😉
훌륭한 튜토리얼입니다. 계속해서 Git을 탐구 할 수 있기를 바랍니다. 감사합니다!
분명한! 나는 이것과 다른 많은 것들에 관해 가능한 한 빨리 더 많은 콘텐츠를 추가할 것입니다.
우수한
그것이 당신에게 얼마나 좋은지 😉 인사말
연습 할 수있게 되 자마자 정말 감사합니다.이 튜토리얼은 제가 오랫동안 찾고 있었지만 찾지 못했습니다!
기본부터 아주 잘 설명했습니다. 감사합니다. 시간이 있으면 캡 투아를 개선하겠습니다.