'헬로우 월드' 프로젝트는 컴퓨터 프로그래밍 분야에서는 전통있는 일종의 통과의례(?)같은 것입니다.
무언가 새로운것을 배울때는, 이런 간단한 프로젝트가 여러분이 시작할때 좋습니다.
자그럼 'Github'를 시작해 볼까요?
여러분이 배울 내용
- 레포지토리(repository) 를 만들고 사용하기.
- 새로운 브런치(branch)를 시작하고 관리 하기.
- 파일을 변경한 후에 커밋(commit)함으로써 Github에 푸시(push)하기.
- 합치기 요청(pull request)를 생성하고 합치기.
깃허브란 무엇인가요?
깃허브는 버전관리와 협업을 하기 위해서 컴퓨터 코드를 제공하는 플랫폼 입니다. 여러분과 다른 사람들이 떨어져 있어도 한 프로젝트에서 협업 할수 있도록 도와줍니다.
이번 튜토리얼은 여러분들에게 깃허브의 핵심 요소인 코드저장소(repositories), 브랜치(branches), 커밋(commits), 합치기 요청(pull request)에 대해서 알려줍니다. 여러분은 여러분만의 Hello World 저장소(repository)를 만들고 깃허브의 합치기 요청(pull request)의 작동 흐름에 대해서 배울 것입니다. 한번 해보고 다시 검토하는 방식으로 해보려 합니다.
코딩은 몰라도 되요
이번 튜토리얼을 완수하기 위해서 여러분은 Github.com의 계정과 인터넷이 필요합니다.(이글을 읽고 있다면 인터넷은 준비된 셈이군요!) 일단 여러분은 코딩을 어떻게 하는지, 커맨드창을 어떻게 쓰는지, Git을 어떻게 설치하는지 일단은 알 필요가 없습니다.
- 팁 : 이 가이드를 모니터의 왼쪽 절반에 띄워놓고 오른쪽에는 깃허브를 열어서 따라해 보시면 수월하다는건 안비밀!
1단계. 저장소(repository) 만들기
저장소는 일반적으로 한개의 프로젝트를 만들기 위해서 사용됩니다. 저장소에는 폴더나 파일, 이미지, 비디오, 엑셀파일, 데이터세트 같은 여러분이 프로젝트를 하는데 필요한 어떤 파일이든 둘수가 있습니다. 일반적으로는 저장소 안에 README 라는 이름을 가진 파일을 만들고, README 파일 안에 프로젝트에 대한 정보를 적어 둡니다. GitHub를 사용하면 새 저장소를 만드는 동시에 README파일을 쉽게 추가 할 수 있습니다. 또한 라이센스 파일과 같은 다른 공통 옵션도 제공합니다.
여러분의 hello-world 저장소는 여러분의 생각이나 자료를 저장하는 공간이 될 수도 있고, 또한 다른 사람과 무언가를 공유하거나 토의하는 공간이 될수도 있습니다.
새로운 저장소 만들어보기
1. 오른쪽 상단의 여러분의 상징 이미지(?) 옆에 있는, +버튼을 클릭한 다음 새로운 저장소[New repository]를 선택합니다.
2. 여러분의 저장소 이름을 hello-world 로 설정해 보세요.
3. 짧은 설명도 곁들여 보겠습니다.
4. README 파일과 함께 저장소를 초기화 하기[Initialize this repository with a README]를 선택하세요
저장소 만들기[Create repository] 를 클릭하세요.
2단계. 브렌치(Branch) 만들기
브렌치는 저장소의 여러가지 버전을 동시에 작업하는걸 말합니다.
기본적으로 당신의 저장소는 최종 브런치인 마스터[master]라는 하나의 브런치를 가지고 있습니다. 여러분은 마스터 브런치에 커밋(반영) 하기 전에 실험용 코드를 만들어 보는등의 변화를 만들 수 있습니다.
마스터 브렌치에서 브렌치를 하나 만들면, 새로 만든 브렌치는 그 시점의 마스터 브랜치의 복사본을 만든다는 것입니다. 여러분이 여러분의 브렌치에서 작업을 하는 동안, 다른 장소에 있는 누군가가 마스터 브렌치를 업데이트(변경)한다면, 여러분은 해당 업데이트를 가져올 수 있습니다.
아래의 그림은 다음의 사항들을 보여줍니다.
- (최종 코드인) 마스터(master) 브렌치
- 피쳐 (feature)라는 새로운 브렌치
- '피쳐'가 '마스터'에 합쳐지기 전까지의 과정
여러분은 다른 버전의 파일들을 아래 처럼 저장해본적이 있나요?
- 완성.txt
- 완성_수정.txt
- 완성_수정2.txt
- 완성_수정2_검토.txt
브렌치(branch)들은 비슷한 역할을 저장소(repository)에서 수행합니다.
깃허브에서 개발자나 디자이너는 버그수정을 하거나 마스터 브렌치(배포 프로그램)와 별도로 기능을 개발하기 위해서 브렌치를 사용합니다.
변경 내용(ex.새로운 기능)이 준비되면 분기를 마스터로 병합합니다.
새로운 브렌치 만들기
1. 여러분의 새로운 저장소인 hello-world 로 이동하세요.
2. 파일 목록의 맨 위에있는 branch : master을 클릭하세요.
3. 텍스트 상자에 readme-edits라고 분기 이름을 입력하세요.
4. 파란색 [Create branch] 상자를 선택하거나 키보드에서 엔터키를 누르세요.
이제 master 및 readme 편집의 두 가지 분기가 있습니다. 이 두개는 아직 똑같아 보이지만 곧 달라질겁니다.
자 이제 새로운 브런치를 좀 다르게 만들어 보겠습니다.
3단계. 변경사항을 만들고 커밋하기.
여러분은 이제 master의 사본인 readme-edits 브런치에 대한 코드를 마주하고 있습니다. 몇 가지 사항을 수정 해 보겠습니다.
깃허브에서 저장된 변경 사항을 커밋(commit)이라고 합니다. 다시 말하면, 뭔가 새롭게 추가된 내용들이죠.
각 커밋에는 변경된 사항과 관련된 메시지가 있으며, 메시지는 특정 변경이 이루어진 이유를 설명합니다.
커밋 메시지는 변경 기록을 남겨두므로 다른 작성자가 여러분이 수행한 작업과 그 이유를 이해할 수 있습니다.
변경하고 커밋하기
1. README.md 파일을 클릭하세요.
2. 편집 할 파일의 오른쪽 상단 구석에있는 연필 아이콘을 클릭하십시오.
3. 에디터에서 여러분에 대해서 간단히 적어보세요.
4. 당신이 변경한 사항에 대해서 커밋 메시지를 적어보세요.
5. [Commit changes] 버튼을 클릭하세요.
이러한 변경 사항은 readme-edits 브렌치의 README 파일에만 적용되므로 이제 readme-edits 브렌치에는 master와 다른 내용이 포함됩니다.
4단계. 당겨짐 요청(Pull Request) 생성하기
수고하셨습니다~!
이제 master의 브렌치에 변경된 사항이 있으므로 당겨짐 요청(pull request)를 열 수 있습니다.
당겨짐 요청은 GitHub의 공동 작업의 핵심입니다. 당겨짐 요청을 생성한다는 것은, 여러분이 변경한 코드을 제안하고
다른 사람들이 여러분이 변경한 코드를 검토하고 끌어 와서 그들의 브렌치에 병합(merge)하도록 요청하는 것입니다.
당겨짐 요청은 두 브렌치의 차이점을 표시합니다.
변경, 추가, 제거된 내용들은 초록색이나 빨간색으로 표시됩니다.
커밋을 하는 즉시 당겨짐 요청을 생성하고 토론을 시작할 수 있습니다.
당겨짐 요청 메세지 안에 있는 깃허브의 '멘션' 기능을 활용해서, 여러분은 지구 반대편의 어느 특정 사람이나 팀에게 피드백을 요청할 수 있습니다.
여러분은 본인의 저장소에서 당겨짐 요청을 생성하고 직접 병합 할 수도 있습니다. 이런 방법은 대규모 프로젝트를 수행하기 전에 GitHub Flow를 배울 수있는 좋은 방법입니다.
README 파일에 대해서 당겨짐 요청(Pull Request) 생성하기
순서 | 화면 |
[Pull Request] 탭을 클릭한 다음 [pull request] 탭에서 초록색 [New pull request] 버튼을 클릭하세요. |
|
여러분이 원본인 마스터 브렌치와 비교하기 위해 만든 브렌치인 readme-edits를 선택하세요. |
|
비교 페이지에서 여러분이 변경한 사항들을 살펴보고, 제출하려는 내용이 맞는지 확인하세요. |
|
제출하려는 변경 사항이 만족스럽다면, 초록색 [Create Pull Request] 버튼을 클릭하세요. |
|
당겨짐 요청에 제목을 쓰고, 변경 사항에 대한 간략한 설명을 작성하세요. |
|
메시지 작성이 끝나면 당겨짐 요청 생성하기[Create Pull Request]를 클릭하세요~!
- 팁 : 여러분은 이모티콘 사용하거나 이미지를 댓글이나 Pull Requests에 끌어 놓을 수 있습니다.
5단계. 당겨짐 요청(Pull Request)을 합치기
이 마지막 단계는 여러분의 변경사항들을 합칠 순서 입니다. readme-edits 브런치를 마스터 브런치에 병합합니다.
1. 초록색 당겨짐 요청을 합치기 [Merge pull request] 버튼을 클릭하여 변경 사항을 마스터에 병합합니다.
2. 병합확인[Confirm merge] 버튼을 클릭합니다.
3. 변경 사항이 통합되었으므로, 보라색 상자의 브렌치 삭제하기[Delete branch] 버튼을 클릭하여 브렌치를 삭제 합니다.
축하합니다~!
이로써 여러분은 깃허브에서 프로젝트를 만들고, 당겨짐 요청(pull request)를 하는 법을 배웠습니다! 킹왕짱 :)
이 튜토리얼에서 여러분이 수행한 작업은 아래와 같습니다.
- 오픈 소스 저장소(repository) 생성
- 새 브런치의 시작과 관리
- 파일을 변경하고 이러한 변경 사항을 깃허브에 커밋하기
- 당겨짐 요청(Pull Request)을 생성하고 합치기
여러분의 깃허브의 프로필을 보면, 이제 여러분은 여러분의 새로운 초록색 '공헌 사각형'(contribution squares)을 볼수 있습니다.
당겨짐 요청 기능에 대한 자세한 내용은 GitHub Flow Guide를 읽는 것이 좋습니다. GitHub을 방문하여 오픈 소스 프로젝트에 참여해 봅시다.
- 팁 : GitHub을 시작하는 방법에 대한 자세한 내용은 다른 가이드, YouTube 채널 및 On-Demand 교육을 확인하십시오.
from. https://guides.github.com/activities/hello-world/
도움이 되셨나요?^^