일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- Tutorial
- 재귀
- String
- dynamic
- w3school
- 문제풀이
- guide
- C#
- 시작해요 언리얼 2022
- Unreal Engine 5
- python
- Material
- DP
- W3Schools
- github
- Unity
- Programming
- 백준
- 파이썬
- Algorithm
- Class
- Basic
- c++
- 기초
- dfs
- UE5
- loop
- parameter
- 오류
- 프로그래밍
- Today
- Total
행복한 개구리
GitHub Guide - Hello World 본문
Hello World - GitHub Docs
Introduction GitHub is a code hosting platform for version control and collaboration. It lets you and others work together on projects from anywhere. This tutorial teaches you GitHub essentials like repositories, branches, commits, and pull requests. You'l
docs.github.com
GitHub의 가이드를 보며 따라했습니당
소개
GitHub는 버전 관리와 협업을 위한 코드 호스팅 플랫폼입니다. 이것은 당신이 다른 이들과 프로젝트를 어디서나 함께 진행할 수 있게 해줍니다.
이번 튜토리얼에서는 GitHub의 필수요소들인 repository(저장소), branch(가지, 지점), commit, pull 요청에 대해 학습할 것입니다.
당신만의 Hello World repository를 만들어 코드를 작성하고 검토하는 일반적인 방법인 GitHub의 pull 요청 작업흐름을 배울 수 있습니다.
목차
- repository 만들고 사용하기
- branch 시작하고 관리하기
- 파일을 변경하고 GitHub에 커밋으로 push하기
- pull 요청
이 튜토리얼을 완료하기 위해서는 GitHub 게정과 인터넷 액세스가 필요합니다. 코드를 작성하거나 명령어를 사용한다던가 Git(GitHub의 근간이 되는 버전 관리 소프트웨어) 을 설치할 필요가 없습니다. 만약 가이드에서 사용한 어떤 표현식에 대해 질문이 있다면 용어 정리로 가서 우리의 용어에 대해 찾아보시길 바랍니다.
저장소 만들기
저장소는 일반적으로 단일 프로젝트를 구성하는 데 사용됩니다. 저장소에는 폴더와 파일, 이미지, 영상, 스프레드시트, 데이터 세트 등의 당신의 프로젝트에 필요한 무엇이든 담을 수 있습니다. 보통, 저장소는 프로젝트에 대한 정보를 담은 README 파일을 포함합니다. README 파일은 순수한 Markdown 언어 텍스트로 작성됩니다. 당신은 이 cheat sheet을 사용하여 Markdown 문법을 알 수 있습니다. GitHub는 당신이 저장소를 만들 때 동시에 README 파일을 추가할 수 있게 해줍니다. GitHub는 또한 라이센스 파일과 같은 여러 옵션들을 제공하지만 현재는 선택할 필요는 없습니다.
당신의 hello-world 레포지토리는 당신의 아이디어, 리소스들을 저장하는 공간이 될 수 있으며 또는 다른 이들과 무언가에 대해 나누고 토론할 수 있는 공간이 될 수 있습니다.
ⓛ GitHub의 아무 페이지에서 우측 상단에 있는 + 드롭다운 메뉴에서 New repository 를 선택합니다.
② Repository name(저장소 이름) 칸에 hello-world 를 적습니다.
③ 설명란에 간단한 설명을 적어줍니다.
④ Add a README file(README 파일 추가) 을 선택합니다.
⑤ 당신의 저장소의 공개범위 Public(공개) 또는 Private(비공개)를 선택합니다.
⑥ Create repository(저장소 생성)를 클릭합니다.
브랜치 만들기
Branching(분기/분점을 나누는 것, 가지를 치는 것)는 당신이 다른 버전들의 repository를 동시에 가질 수 있게 합니다.
기본적으로, 당신의 저장소는 최종적인 지점으로서 여겨지는 main 이라는 이름의 브랜치(branch) 하나를 가집니다. 당신의 저장소에서 main 이라는 지점으로부터 추가적인 브랜치들을 생성할 수 있습니다. 당신은 프로젝트의 다른 버전들을 동시에 가지기 위해 브랜치를 사용할 수 있습니다. 이것은 당신이 주요 소스코드의 변경 없이 프로젝트에 새로운 특성을 추가하고 싶을 때 도움이 됩니다. 다른 브랜치에서 마친 작업은 합치기 전엔 메인 브랜치에 나타나지 않으며, 이에 대한 내용은 이 가이드에서 다시 다룹니다. 당신은 main 에 커밋하기 전에 실험하거나 수정하는데 브랜치를 사용할 수 있습니다.
당신이 main 브랜치로부터 다른 브랜치를 생성하면 main 의 복사본 또는 스냅샷을 만듭니다. 만약 당신이 당신의 브랜치에서 작업 중일 때 다른 이가 main 을 변경했다면 해당 업데이트를 받아올 수 있습니다.
이 다이어그램에서 보여줍니다:
- main 브랜치
- feature 이라고 불리는 새로운 브랜치
- feature 브랜치가 main 으로 합쳐지기 까지의 과정
당신은 다음과 같이 서로 다른 버전의 파일을 저장해본 적이 있으신가요?
- story.txt
- story-edit.txt
- story-edit-reviewed.txt
브랜치들은 GitHub 저장소들에서 비슷한 목표를 달성합니다.
GitHub의 개발자, 작가, 디자이너들은 브랜치를 버그 픽스, main (상품)브랜치로부터 분리하여 작업을 수정하는 데 사용하고 있습니다.
브랜치 생성하기
ⓛ 당신의 hello-world 레포지토리에서 Code 탭을 클릭합니다.
② 파일리스트 상단의 main이라고 되어있는 드롭다운을 클릭합니다.
③ readme-edits 라고 브랜치 이름을 적어줍니다.
④ Create Breanch: readme-edits from 'main'을 클릭합니다.
이제 당신은 main , readme-edits 두 개의 브랜치를 가지게 되었습니다. 지금은 이 두 개가 완전히 똑같아 보일 것입니다. 이다음에 새로운 브랜치를 변경해봅시다.
변경하고 커밋하기
당신이 이전 단계에서 새로운 브랜치를 만들었을 때 GitHub는 당신에게 main 브랜치의 복사본인 새로운 readme-edits 브랜치를 위한 코드페이지를 제공합니다.
당신은 레포지토리에 있는 파일을 변경하고 저장할 수 있습니다. GitHub에서는 저장된 변경점들을 commits(커밋)이라고 합니다. 각각의 커밋은 해당요소가 어째서 변경되었는지에 대해 설명하는 커밋메시지와 결부됩니다. 커밋메세지는 변경내역을 담아내어 다른 참여자들이 당신이 왜 그렇게 했는지 이해할 수 있게 해줍니다.
① 생성한 readme-edits 브랜치 아래에 README.md 파일을 클릭합니다.
②🖊️을 눌러 파일을 편집해봅시다.
③ 에디터에서 당신에 대해 조금 적어봅시다. 다른 마크다운 요소를 사용해보세요.
④ Commit changes 상자에서 커밋메세지에 당신의 변경에 대해 설명하세요.
⑤ Commit changes 를 클릭합니다.
이 변경사항들은 당신의 readme-edits 브랜치에 있는 README파일에만 적용되며 이제 이 브랜치는 main 과 다른 내용물을 포함하게 되었습니다.
Pull 요청 열기
이제 당신은 main 과 다른 브랜치를 변경할 수 있으니 당신은 pull 요청을 열 수 있습니다.
Pull 요청은 GitHub 협업의 핵심입니다. 당신이 pull 요청을 열 때 변경 사항을 제안하고 다른 사용자에게 당신의 기여내용을 검토하고 가져와 해당 분기에 병합하도록 요청합니다. Pull 요청은 두 브랜치의 내용물의 차이점들을 보여줍니다. 변경 사항, 추가 사항, 삭제 내용들이 다른 색으로 나타납니다.
당신이 커밋을 하자마자 코드가 마무리되지 않더라도 당신은 pull요청을 열고 토의를 시작할 수 있습니다.
GitHub의 pull요청 메시지 안에 있는 @mention 특성으로 장소와 시간에 구애받지 않고 당신이 요청한 팀이나 사람들에게 피드백을 구할 수 있습니다.
당신은 pull요청을 당신만의 레포지토리에서도 열 수 있으며 병합할 수도 있습니다. 이것은 더 큰 프로젝트를 작업하기 전에 GitHub의 흐름을 알아가는 훌륭한 방법입니다.
① 당신의 hello-world 레포지토리에 있는 Pull requests 탭을 누르세요
② New pull request를 누르세요
③ Example Comparisons 상자에서 당신이 만든 브랜치, readme-edits 를 선택하고 main 과 비교합니다.
④ 비교페이지에서 차이점으로 나오는 당신의 변경 사항들을 살펴보고 당신이 정말로 그들을 제출하길 원하는지 확인합니다.
⑤ Create pull request를 클릭합니다.
⑥ 당신의 pull 요청에 제목과 변경점에 대한 간단한 설명을 달아줍니다. 당신은 이모티콘이나 이미지, 움짤들을 드래그 & 드롭하여 첨부할 수 있습니다.
⑦ 선택적으로, 당신의 제목과 설명 오른쪽에서 검토자 옆에 있는 ⚙️를 클릭합니다. 수신인, 라벨, 프로젝트, 또는 마일스톤(중요한 단계)과 같은 옵션들을 당신의 pull 요청에 추가할 수 있습니다. 당신은 아직 아무것도 추가할 필요가 없습니다만, 이 옵션들은 pull 요청으로 협업하는 다른 방식을 제공합니다. 더 많은 정보를 원하신다면 "About pull requests"를 보세요.
⑧ Create pull request를 클릭하세요.
당신의 공동작업자는 이제 당신이 편집 내용을 검토하고 제안할 수 있습니다.
Pull 요청 병합하기
이 마지막 단계에서 당신은 readme-edits 브랜치를 main 브랜치에 병합할 것입니다. 당신이 pull 요청을 병합한 후에, readme-edits 브랜치의 변경 사항들은 main 브랜치에 통합됩니다.
때때로 pull요청은 main 에 존재하는 코드와 바뀐 코드의 충돌을 알려줄 수도 있습니다. 만약 충돌이 일어난다면, GitHub는 당신에게 코드 충돌을 알리고 코드 충돌이 해결되기 전까진 병합을 방지할 것입니다. 당신은 충돌을 해결하여 커밋하거나 pull 요청의 코멘트를 사용하여 당신의 팀원들과 충돌을 어떻게 할 것인지에 대해 의논할 수 있습니다.
이 가이드를 따라온 당신의 것에선 아무런 충돌이 없습니다. 따라서 당신은 당신의 브랜치와 main 브랜치를 병합할 준비가 되었습니다.
① main 에 변경 사항들을 병합하기 위해 Merge pull request를 클릭하세요.
② Confirm merge를 클릭하세요. 당신은 요청이 성공적으로 통합되어 종료되었다는 메시지를 받을 것입니다.
③ Delete branch를 클릭하세요. 이제 당신의 pull 요청은 병합되어 변경 사항들은 main 에 있으며 당신은 안전하게 readme-edit 브랜치를 삭제할 수 있습니다. 만약 당신이 프로젝트를 더 많이 변경하고 싶다면 당신은 언제나 새로운 브랜치를 만들어 이 과정을 반복하면 됩니다.
다음 단계
이 튜토리얼을 마무리하며 당신은 프로젝트를 만들어 GitHub에서 pull 요청을 하는 것에 대해 배웠습니다.
당신은 이번 튜토리얼에서 아래와 같은 것들을 성취했습니다.
- 오픈 소스 레포지토리 만들기
- 새로운 브랜치를 시작하고 관리하기
- 파일 변경하고 GitHub에 변경 사항들을 커밋하기
- pull 요청 열고 병합하기
GitHub 프로필을 둘러보시면 당신의 작업이 기여 그래프에 반영된 것을 확인할 수 있습니다.
브랜치와 pull 요청에 대한 더 많은 정보를 원한다면 "GitHub flow"를 보세요.
GitHub로 시작하며 더 많은 정보를 원한다면 우리의 다른 가이드인 getting started quickstart를 보시면 됩니다.
'GitHub > Guide' 카테고리의 다른 글
GitHub Guide - Fork a repo(Web browser) (0) | 2022.05.19 |
---|---|
GitHub Guide - Fork a repo(GitHub Desktop) (0) | 2022.05.19 |
GitHub Guide - Fork a repo(GitHub CLI) (0) | 2022.05.17 |
GitHub Guide - Create a repo (0) | 2022.05.11 |
GitHub Guide - Set up Git (0) | 2022.05.06 |