GIT for the Tree Project - Gifted-Children/Tree GitHub Wiki

GIT for the Tree Project

시작

Pycharm 설치

Pycharm

GIT 연동(최초 1회)

  1. Pycharm 실행

  2. VCS>Get from Version Control

  1. Clone

작업

이슈 확인 및 등록, 삭제

  • 모든 작업은 이슈 기반으로 진행된다.

이슈 확인

  1. 깃헙에 접속한다.

  2. psgstellar/Stellar로 이동한다.

  3. Code 탭 오른쪽에 issues 탭을 클릭한다.

  4. 등록되어 있는 issue들을 확인한다.

이슈 등록

  1. [위 이슈 확인 섹션]의 3번에서 New issue 버튼을 클릭한다.

  2. 제목, 내용을 작성한다.

  • 내용 작성 시, Write 탭 오른쪽에 있는 Preview 탭 클릭 시 작성한 마크다운이 어떻게 표시되는지를 확인해볼 수 있다.
  1. 해당 이슈를 담당할 Assignees(담당자)를 선택한다. (복수 선택 가능)

  2. 위 3번과 동일 방식으로 Labels(라벨) -> 해당 사항 선택 -> 없을 시 새로 생성, Projects(프로젝트) -> The Stellar Project를 클릭한다., Milestone은 해당 사항 선택 -> 없을 시 패스

  3. Submit new issue를 클릭한다.

이슈 삭제

  1. [위 이슈 확인 섹션]의 3번에서 작업이 끝난 이슈를 클릭한다.

  2. Comment 작성란 아랫쪽의 Close issue를 클릭한다.

브런치 생성

본 섹션은 변경사항을 반영할 브런치에서 분기한 새로운 작업 브런치를 생성하는 방법을 다룬다.

방법 1

git-branch-01.png

  1. 왼쪽 하단의 빨간색 네모 박스를 누른다.

git-branch-02.png

  1. Local 아래 브런치 중에서 변경사항을 반영할 브런치를 선택한다.
  • 필자는 변경사항을 반영할 브런치가 wiki이므로 이를 선택했다.
  • main 왼쪽 책갈피 아이콘은 현재 내가 위치해있는 브런치를 나타낸다.)

git-branch-03.png

  1. 선택한 후 오른쪽 마우스를 눌러 New Branch from Selected...을 선택한다.

git-branch-04.png

  1. 빨간색 네모 박스 내에 생성할 브런치명을 기입한다.
  • 브런치 명명규칙은 아랫쪽 섹션에서 다룰 예정.
  • 필자는 issue number 2에 해당하는 issue를 해결하는 작업을 진행할 것이므로, feature/issue-#2를 기입하였다.
  • Checkout branch를 체크하면 브런치 생성 이후 곧바로 해당 브런치로 이동한다.
  1. Create 버튼을 눌러 기입한 브런치명에 해당하는 브런치를 생성한다.

git-branch-05.png

  1. 브런치 생성이 완료되었다면 feature 하위에 issue-#2라는 브런치가 생성된 것을 확인할 수 있다.
  • 필자는 Checkout branch를 체크하였으므로 해당 브런치 왼쪽에 책갈피 모양이 있는 것을 확인할 수 있다. 즉, 현재 feature/issue-#2 브런치에 있다는 의미이다.

방법 2

git-branch-00-01.png

  1. 오른쪽 하단의 빨간색 네모 박스를 누른다.

  2. 이하 [방법 1]의 2-6과 동일.

Commit & Push

  1. 생성된 작업 브런치 또는 작업 브런치 생성 후 해당 브런치로 이동한다.

  2. 변경사항을 만든다.

  • 필자는 issue #2의 요구사항을 만족시키기 위한 작업을 진행하였다.

git-branch-06.png

  1. 오른쪽 상단의 빨간색 네모 박스를 클릭한다.

  2. 왼쪽 커밋 탐색기에서 Unversioned Files 왼쪽의 화살표를 클릭한다.

  3. 나오는 리스트 목록 중 커밋 후 푸쉬할 항목들을 선택한다.

git-branch-08.png

  1. 선택 후 아랫쪽 빨간색 네모 박스에 커밋 메시지를 작성한다.

  2. 작성까지 완료하였다면, Commit and Push... 버튼을 클릭한다.

  3. 변경사항을 한번 더 검토 후 푸쉬할 수 있는 창이 뜬다.

  4. 변경사항에 문제가 없다면 Push 버튼을 클릭한다.

  • 첫 사용이라면 작은 창이 뜰텐데 Log in via Github...을 선택해주면 된다.
  1. 푸쉬가 완료되었다면 오른쪽 하단에 Pushed ~ 형식의 메시지가 뜬다.

PR

  1. 깃헙 사이트에 접속한다.

  2. 푸쉬한 해당 레파지토리로 이동한다.

  3. Pull Request를 클릭한다.

  4. New Pull Request를 클릭한다.

  5. compare은 푸쉬한 브런치, 즉 작업 브런치를 선택하고, base는 병합할 브런치, 즉 작업 브런치에서 분기하기 전의 브런치를 선택한다.

  • 기본값은 baes: main, compare: main이다.
  1. Create pull request를 클릭한다.

  2. 제목과 내용을 작성한다.

  • 제목의 기본값은 커밋 메시지이다.
  1. 오른쪽의 Reviewers(검토자)를 선택하여 나오는 리스트 목록 중 검토자를 선택한다. (복수 선택 가능)

  2. 마찬가지 방식으로 Assignees(담당자)와 Labels(라벨) -> 해당사항 없으면 새로 생성, Projects(프로젝트) -> The Stellar Project 선택, Milestone -> 해당사항 있으면 선택 없으면 패스

  3. Create pull request를 누른다.

정리(그림)

지금까지 한 작업은 다음 그림으로 요약할 수 있다.

git-branch-09.png

  • 1번 New Branch from Selected...에서 from에 해당하는 브런치는 main이다.
  • 2번 New Branch from Selected...에서 from에 해당하는 브런치는 wiki이다.

즉, 브런치를 생성하는 것만큼이나 중요한 것이 어떤 브런치에서 분기하여 생성할 것이냐이다. 그러므로 항상 신중에 신중을 기해서 from에 해당하는 브런치를 잘 선택하자.

  • 또한, PR(Pull Request)에 해당하는 선을 점선으로 표기한 이유는 아직 Merge되지 않았기 때문이다. PR은 해당 Merge에 대해 모두의 동의를 얻는 작업이라 생각하면 된다.
  • 만약 모두의 동의를 얻었다면, Merge 담당자가 이를 Merge하면 된다.
  • 그래서 PR을 날릴 때 Reviewers(검토자)를 선택한 것이다.
  • 검토자들의 의견이 모두 합치되었을 때 담당자가 해당 브런치를 목적 브런치에 병합시키는 것이다.

References

Ellun's Library