Notice
Recent Posts
Recent Comments
Link
«   2024/12   »
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
Archives
Today
Total
관리 메뉴

nomad-programmer

[VCS/GitHub] 원격 저장소 사용 본문

VCS/GitHub

[VCS/GitHub] 원격 저장소 사용

scii 2019. 11. 26. 19:41

https://github.com

 

Build software better, together

GitHub is where people build software. More than 40 million people use GitHub to discover, fork, and contribute to over 100 million projects.

github.com

위의 링크를 타고 들어가 가입한다.

지불하는 비용에 따라서 비공개 저장소를 얼마나 사용할 수 있는지가 정해진다. 무료로 이용한다면 github에서 생성하는 모든 저장소는 공개 저장소가 된다.

* Help me set up an organization next 체크 박스는 많은 사람이 협업 할 때 팀을 만들어서 활동하도록 설정하겠다는 의미이다.

원격 저장소(remote repository)는 단어 의미 그대로 외부에서 접속해 사용하는 저장소를 뜻한다. 즉, 로컬에서 작업한 git프로젝트 저장소가 외부에 있는 것이다.

github는 개인 사용자들에게 이러한 원격 저장소를 제공한 후 여러 가지 기능을 사용할 수 있도록 한다.

  • 포크(fork): 다른 사람의 저장소를 복사하는 기능
  • 풀 리퀘스트(pull request): 포크한 저장소를 수정해 다시 원본 저장소에 병합해달라는 요청을 보내 사용자 사이의 상호 작용을 일으키게 하는 기능
  • 이슈(issues): 저장소 안에서 사용자들 사이의 문제를 논의하는 기능
  • 위키(wiki): 저장소와 관련된 체계적인 기록을 남기는 기능

개인 사용자들은 서로의 원격 저장소를 읽거나 쓸 수 있다. github에서 오픈 소스 프로젝트가 활발하게 이뤄지는 이유는 바로 이 원격 저장소의 활용과 공유가 편리하기 때문이다.

  • owner: 사용자 아이디가 표시된다. 협업 환경에서는 다른 사용자의 아이디를 지정할 수도 있다.
  • repository name: 새로 생성할 원격 저장소의 이름을 입력. 가능하면 로컬 환경에서 작업할 git 프로젝트 디렉토리 이름과 같게 하는 것이 좋다. 같지 않아도 상관은 없지만 사람이 실수할 가능성이 너무나 커지므로 같은 이름을 사용한다.
  • description: 꼭 작성할 필요는 없는 항목이지만 생성한 원격 저장소가 어떤 역할을 하는지를 간단하게 적어두면 원격 저장소가 많아졌을 때 구분하는 데 도움이 된다.
  • public/private: 원격 저장소의 공개 여부를 선택하는 옵션. 무료 사용자는 public만 선택할 수 있다.
  • initialize this repository with a README: 기본적으로 체크 표시를 해준다. 체크하면 github에서 생성한 원격 저장소를 바로 로컬 저장소에 복사해서 가져올 수 있다. 또한 '저장소 이름'과 'description' 항목의 내용을 담은 README.md 파일을 생성한다.
  • add .gitignore: 원격 저장소에 포함하지 않을 파일들의 목록을 만들 때 사용. 
  • add a license: 원격 저장소에 저장할 프로젝트가 어떤 라이센스에 속할지를 선택한다.

github 원격 저장소의 구조

  • watch: 해당 버튼을 클릭하면 원격 저장소의 활동 내역을 사용자에게 알려준다. 댓글이나 이슈 등에서 언급될때만 알려주는 Not Watching, 모든 활동 내역을 알려주는 Watching, 모든 알림을 무시하는 Ignoring을 선택할 수 있다. 오른쪽 숫자는 현재 활동 내역을 보고 있는 사람의 수이다.
  • star: 해당 원격 저장소에 관심이 있을 때 클릭하면 된다. 오른쪽 숫자는 관심이 있는 사람의 수를 나타낸다.
  • fork: 해당 버튼을 클릭하면 원격 저장소를 포크한다. 오른쪽은 포크한 사람의 수를 나타낸다.
  • description: 원격 저장소를 설명하는 메세지를 나타낸다.
  • commits: 원격 저장소의 총 커밋 수를 나타낸다.
  • branches: 원격 저장소의 브랜치 수를 나타낸다.
  • releases: 원격 저장소의 태그수를 나타낸다. 주로 특정 버전에 표식을 주고 싶을 때 사용한다. 이 표식을 통해서 특정 버전을 다운로드할 수 있다.
  • contributor: 원격 저장소에 커밋 혹은 풀 리퀘스트가 받아들여진 사용자 수이다. 이 저장소가 오픈 소스라면 이 오픈 소스에 공헌한 사람의 수라고 생각하면 된다. 유명하고 많은 사람이 참여하는 프로젝트일수록 이 숫자가 클 것이다.

브랜치 관련 메뉴

  • compare, review, create a pull request: 브랜치 사이의 차이를 비교하거나 리뷰할 때 사용한다. 원하는 브랜치를 선택해서 리뷰할 수 있다.
  • current branch: compare, review, create a pull request 옆에 있다.원하는 브랜치를 선택하는 기능이다.
  • path: 현재 열려 있는 저장소 화면의 경로이다. 맨 왼쪽이 최상위 경로이다. 이 기준으로 경로 이름을 선택하면 해당 경로로 바로 이동할 수 있다.
  • fork this project and create a new file: '+' 기호로 표시된 링크이다. 현재 경로에 새로운 파일을 추가할 수 있다. 단, github의 특성상 해당 원격 저장소의 관리자가 아니라면 추가하려는 사용자의 원격 저장소로 포크한 후 파일을 추가한다.

특히 current brach에서 브랜치를 선택하면 해당 브랜치로 체크아웃해서 github에서 볼 수 있다.

저장소 메뉴

  • code: 해당 원격 저장소의 루트 디렉토리로 이동한다. 어떤 경로에 있더라도 루트 디렉토리로 이동한다.
  • issues: 해당 원격 저장소의 주요 이슈 사항을 기재한 후 관리한다. 게시판 형태이며 댓글 형태로 토론이 이뤄지기도 한다. 이슈로는 무엇이든 다룰 수 있지만 보통은 문제점이나 개선점을 얘기한다고 생각하면 된다.
  • pull requests: 풀 리퀘스트 전체 목록을 모아서 보여준다. issues와 마찬가지로 목록마다 댓글 형태로 토론할 수 있다. 보통 왼쪽에 있는 숫자는 현재 요청이 온 풀 리퀘스트를 받아들일 것인지에 대한 논의가 몇개인지 알려주는 것이다.
  • wiki: 공유할 정보나 개발 문서, 참고 자료 등을 작성하기 위한 기능이다. 위키백과를 떠올리면 된다. 마크 다운과 위치위키 문법을 사용한다.
  • pulse: 해당 원격 저장소의 최근 변경 내역을 확인할 수 있다. 최대 한 달까지의 변경 내역을 확인할 수 있으며 풀 리퀘스트 몇 개중에 몇 개가 받아들여졌나, 이슈는 몇 개가 있고 몇 개가 해결되었나, 해당 풀 리퀘스트와 이슈에 관련된 활동을 볼 수 있다.
  • graphs: 공헌자의 공헌 내역, 커밋 수 등 해당 저장소의 활동 내역을 그래프화해서 보여준다.
  • settings: 해당 원격 저장소의 관리자라면 저장소의 각종 설정을 변경할 수 있다.
  • HTTPS clone URL: 원격 저장소를 클론할 때 사용하는 주소 정보를 알려준다. 문장의 링크를 클릭해서 HTTPS 이외에 SSH, 서브버전에 맞는 주소로 변경할 수 있다.
  • Clone Desktop: github 전용 클라이언트 프로그램을 사용해 클론할 때 클릭한다.
  • download ZIP: 원격 저장소의 전체 파일을 압축 파일 형태로 다운로드할 수 있다. 만약 어떤 프레임워크의 전체 파일을 담은 저장소라면 다운로드해서 다양한 곳에 응용해 사용할 수 있다.
Comments