원문: https://guides.github.com/activities/hello-world/
Hello PlumpMath Friends~~.
10 minute read
차례
- Intro
- What is GitHub?
- Create a Repository
- Create a Branch
- Make a Commit
- Open a Pull Request
- Merge Pull Request
Hello World 프로젝트는 컴퓨터 프로그래밍에서 오랜 전통입니다. 새로운 것을 배울 때 당신을 시작할 수있는 간단한 운동입니다. GitHub을 시작합시다!
다음 방법을 배우게됩니다:
- Create and use a repository
- Start and manage a new branch
- Make changes to a file and push them to GitHub as commits
- Open and merge a pull request
GitHub은 버전제어(version control)과 협동작업=협업(collaboration)을 위한 “코드호스팅플랫폼”입니다. 어디서나 함께 프로젝트를 할수있게해줘용.
이 강좌(Tutorial)은 저장소(repositories) 분기(branches) 커밋(commits) 풀리퀘(Pull-Requests) 같은 GitHub 필수기능에 대해 설명함.
이 강좌는 코딩을 안해도 배울수 있다.
따라해볼려면, GitHub.com 계정과 인터넷 접속이 필요함. 코드작성 및 Git을 command line에서 쳐서따라하거나, git을 설치하지 않아도 되용.
팁: 이 가이드를 별도의 브라우저 창이나 탭에서 열고, 꼭~~ 모두 따라해봐요.
일반적으로 저장소(Repository)는 단일 프로젝트를 구성합니다. (submodule이라는 git프로젝트안에 하위git프로젝트를 알까기방법이 존재하지만 이메뉴얼에서는 안나옴)
저장소에는 프로젝트에 필요한 폴더 및 이미지, 비디오, 스프레드 시트 등 데이터 파일 모임일수 있죠.
따로 README같은 프로젝트 정보가 포함된 파일을 포함하는 것이 좋습니다. GitHub를 사용하면 새 저장소를 만드는 동시에 쉽게 README 파일을 추가 할 수 있음.
또한 License 파일과 같은 다른옵션도 제공할수 있습니다.
hello-world 저장소는 아이디어, 자원을 저장하거나 다른 사람들과 공유하고 토론 할 수있는 장소가 될 수 있습니다.
- 오른쪽 상단의 아바타 또는 identicon 옆에있는을 클릭하십시오. (+)새저장소를 선택하십시오.
- 저장소 이름을 hello-world로 설정
- 짧은 설명을 달아줘용.
- Initialize this repository with a README <– 요 체크는 README.md 파일을 자동으로 생성시킨다. (난 이맥스이용자기 때문에 마크다운보단 README.org를 애용)
Create repository 클릭. 🎉
Branching은 한 저장소에서 여러버전들로 작업 할수있게 해줘요
기본적으로 저장소에는 최종 branch로 간주되는 master라는 하나의 branch가 있습니다. master(branch)로 새로운 작업들을 커밋하기 전에, 우리는 새로운 branch를 사용하여 실험하고 편집합니다.
master branch에서 새 branch를 생성 하면 그 시점은 master(branch)의 사본인 새작업 branch가 됩니당.
새 branch를 만들어 작업하는동안 딴사람이 master branch를 변경한경우를 대비해… 언제나 작업시에 update된 새작업들을 수동으로 받아와야(=pull)합니다. (드랍박스로 예를 들자면 업로드/다운로드 수동싱크로 생각하면됩니다. 마치 FTP에서 Upload/Download 했었던것 처럼요)
이 다이어그램은 다음을 보여줍니다:
- The “master” branch
- feature라는 새로운 브랜치 (메인 master branch에서 ‘feature라는 작업’을 하고있기 때문에)
- feature branch가 생성되어 master branch에 병합되는 모습을 보여줌.
다른버전(에디팅한)의 파일을 저장 한 적이 있습니까? 대충 요런거:
- story.txt
- story-joe-edit.txt
- story-joe-edit-reviewed.txt
Branches 지점은 GitHub 저장소에서 비슷한 목표를 달성합니다. (뭔소리야 google번역기야…-_-)
GitHub에서 branch를 사용하는 이유는.... 개발자나, 작가나, 디자이너가 작성한 새기능 즉 버그수정같은 새로운 (code,text,picture) 같은 새로운 data들이 변경/추가될때마다 branch 라 명명허고 그래서 branch라는 기능을 사용하면. 이전의 master (production) branch의 이전 작업이력을 백업본으로 유지하면서 새 작업과 분리시켜줍니다.
(여튼.. 작업할때마다 branch를 추가시켜서 작업해야만 여러사람들이 (누가/무엇을/언제) 작업했는지 구분하기 위한 협업이 가능해요.)
변경된작업(change)을 올릴때, master branch에다 새작업 branch를 병합(merge)합니다. (그냥 혼자 작업하면, master브랜치로만 작업해도 됩니다.)
새 Branch 를 만들려면
- hello-world 너의 새 저장소를 보아라.
- 파일리스트 왼쪽 위에 branch: master 드랍다운 버튼을 누르고
- 새 Branch 이름을 적는 공간에 readme-edits 라고 적는다.(마음대로 새 branch명을 적어보자!)
- Select the blue Create branch box or hit “Enter” on your keyboard.
master 및 readme-edit 2가지 branch(=버전)가 생겼당. 똑같이 보이지만, 추가한 branch(버전하나)를 딴내용으로 바꾸든/추가하든/채워라! 그렇게 이제 우리는 새branch로 우리의 새작업을 추가하면 된데용… (Github 이누마~~ 그걸 보여줘야징.. 아래에 나오는거 같당.)
브라보! 이제 master브랜치 사본인 readme-edits브랜치에 대한 코드뷰가 생겼다. 몇 가지 사항을 수정 해 보겠습니다.
GitHub에서, 저장된 변경사항(changes)을 커밋(commits)이라고합니다. 각 커밋에는 관련 변경 메시지가 있으며, 이는 특정 변경이 이루어진 이유를 설명하는 설명입니다. 커밋 메시지는 변경 기록을 캡처하므로 다른 작성자가 수행 한 작업과 그 이유를 이해할 수 있습니다. 변경한걸 커밋해보기~
- README.md 파일을 클릭해라. (나는 안올렸지롱~ README.org가 그파일임) (주의사항 : 새로만든 readme-edits브랜치로 두고 작업해라)
- 편집할 파일보기의 오른쪽 상단 구석에있는 연필 아이콘을 클릭하십시오.
- 에디터에서 아무거나 조금 씁니다.
- 변경사항을 설명하는 커밋메시지를 작성하십시오.
- “Commit changes” 버튼을 클릭.
이러한 변경사항은 readme-edits 브랜치의 README.org 파일에만 적용되므로 이제 이 branch에는 master와 다른 내용이 포함됩니다.
편집/추가 잘했어! 이제 넌 master의 branch에서 변경된 사항이 갖고 있으므로, pull request 할수 있습니다.
풀 요청(Pull Requests)은 GitHub의 공동 작업의 핵심입니다. 니가 너의 변경내용을 제안하는 “풀리퀘(Pull Requests)”을 하면, (풀리퀘 받은)저장소 주인은 너의 공헌(contribution)들을 받아서(pull), 검토(review)하고, 자신의 저장소에 새 branch를 병합(merge)하게 된다. (당연히 협업에 생각이 없다면 안해줄수도 있다.)
풀리퀘 는 두 Branches 를 보여주고,내용의 부분 차이점도 표시해줘용. 추가된변경(+)은 Green으로, 빠진변경(-)은 Red로 표시됩니다.
커밋을하는 즉시, 풀리퀘를 보내공 토론을 시작할 수 있습니다. 당연히 커밋전에 할수도 있다
풀 요청 메시지에서 GitHub의 @mention(언급)시스템 사용허면, 가까운동네에 있든지 10시간대에 떨어져있는 딴나라에 있는 특정 사람이나 팀으로부터 피드백을 요청할 수 있습니다.
심지어 자신의 저장소에서 pull requests을 직접보내고, 병합(merge) 할 수도 있습니다. 대규모 프로젝트를 수행하기 전에 GitHub FLow를 배울수 있어 조타
메시지 작성이 끝나면, “Create pull request” 클릭
팁: 코멘트에 emoji아이콘 이나 마우스로 GIF 또는 그냥 이미지를 추가할수도 있어요.
이 마지막 단계에선, readme-edits branch와 master branch의 변경사항들을 병합(merge)해보는 시간이 드디어~~ 왔습니다.
- Merge pull request 녹색버튼을 클릭하여, 변경사항을 master에 병합합니다.
- Confirm merge 클릭.
- 변경사항이 통합되었으므로, 보라색 상자의 Delete branch 버튼을 사용하여 방금 이미 merge적용된 branch를 삭제~~
여기까지, GitHub에서 프로젝트를 만들고, 풀리퀘까지 배웠다. 🎉 ⚡
수행한 작업은 다음과 같습니다:
- 오픈소스 저장소를 만들었다.
- 새로운 브랜치를 시작하고 Merge하는 방법을 배웠다.
- 파일을 변경하고 GitHub에 commit해봤다.
- Pull Request(풀리퀘)를 열고, Merge해봤다.
GitHub 프로필 페이지에 가보면, 새로운 기여사각형 들을 보게 될 것입니다!
Pull Requests의 힘에 대해 더 배우려면, GitHub Flow Guide를 읽는 것이 좋습니다.
GitHub Explore를 방문하여 오픈 소스 프로젝트에 참여할 수도 있습니다.
팁 : GitHub을 시작하는 방법에 대한 자세한 내용은 다른 가이드, YouTube채널 및 On-Demand 교육을 확인하십시오.
Last updated April 7, 2016