My Blog

Latest blog


Intro

 PGithub에 코드를 업로드 하면서 친절한 사용방법을 함께 남기고 싶었습니다. Github에서 '프로젝트 설명서' 관련 가이드를 제시하고 있는데, 이를 정리하면서 여러분과 공유합니다.



Github에서 사용하는 프로젝트 설명서

 훌륭한 설명서는 모든 프로젝트가 성공으로 향하는 핵심 요소입니다. 좋은 설명서를 만드는 것은 다른 사람들이 프로젝트에 대해 쉽게 배울 수 있도록 도와줍니다.

 Github에서는 일반적으로 두 가지 종류의 프로젝트 설명서가 존재합니다.
  • ⊙ README 파일: 프로젝트를 신속하고 간략하게 배울 수 있는 방법
  • ⊙ Wikis: 프로젝트에 대한 유용한 정보를 심도있게 이해하고 배울 수 있는 방법

 여러분들의 프로젝트에 적어도 README 파일은 만들어 두는 것이 좋습니다. 다른 사람들이 당신의 프로젝트를 찾아왔을 때 가장 먼저 마주치고 읽어보는 페이지이기 때문입니다.



README 만들기

 Github에서 새로운 repository를 생성할 때 "Initialize this repository with a README"를 선택하면 함께 생성됩니다. 혹은 이미 작성한 README 파일이 있다면 직접 import 할 수도 있습니다.


 README 파일이 생성되었습니다. 이 파일은 github 페이지 내에서 혹은 local 환경에서 쉽게 수정할 수 있습니다. 원활한 수정을 위해서 Markdown language에 대한 기본 지식이 필요합니다. 이것 또한 github에서 "Mastering Markdown 가이드"를 제공하고 있습니다.



README 형식

 README 파일은 다른 개발자에게 프로젝트의 주요한 부분을 신속하게 안내하기 위하여 일반적으로 다음과 같은 형식을 따라 순서대로 작성합니다.

  • ⊙ 프로젝트명: 프로젝트명은 readme 파일을 스크롤 했을 때 가장 먼저 보이는 부분입니다.
  • ⊙ 소개: 훌륭한 소개는 명확하고, 간략하고, 요점만 담아 안내합니다. 프로젝트의 중요성과 어떤 역할을 하는지 이야기 하세요.
  • ⊙ 목차: 이 항목은 옵션입니다. 있어도 그만, 없어도 그만. 보통 README 파일의 길이가 긴 경우 사람들이 빠르게 원하는 부분만 찾아볼 수 있도록 제공합니다.
  • ⊙ 설치: 다른 사용자가 프로젝트를 어떻게 local에 설치하는지 설명하는 부분입니다. 명확한 설명을 위해 gif 파일을 사용하기도 합니다.
  • ⊙ 사용법: 다음은 설치한 뒤 어떻게 프로젝트를 실행하는지 설명하는 부분입니다. 단계별로 스크린샷을 첨부하는 것도 좋은 방법입니다.
  • ⊙ 기여: 규모가 큰 프로젝트는 메인 개발자 외 다른 개발자도 참여하는 경우가 종종 있습니다. 또는 사용자 입장에서 버그나 이슈사항을 보고할 수도 있습니다. 이 때 개발에 참여하거나 프로젝트 발전에 기여한 사람과 프로젝트의 섹션을 언급하는 부분입니다. 때때로 별도의 파일로 생성하기도 합니다. 이와 관련된 내용은 "setting guidelines for repository contributors"를 참고하세요.
  • ⊙ 개발자: 프로젝트 개발자를 언급하는 부분입니다.
  • ⊙ 라이선스: 마지막으로 프로젝트의 라이선스를 소개하는 부분입니다. 어떤 라이선스를 선택해야 할지 의문이 드는 경우 github의 "licensing guide"를 참고하세요.



Wiki 만들기

 Github의 모든 repository는 하나의 wiki 페이지가 함께 존재합니다. "Create the first page" 버튼을 클릭한 뒤 wiki 페이지를 작성할 수 있습니다.



컨텐츠 추가

 Wiki 컨텐츠는 수정하기 쉽게 디자인 되어있습니다. 어떤 wiki 페이지에서든지 우측 상단의 'Edit' 버튼만 클릭하면 에디터가 나타납니다.


 Wiki 페이지는 "GitHub Markup"이 지원하는 모든 포맷을 사용할 수 있습니다. Footer를 추가하여 연락처나 라이센스 정보 등을 안내할 수 있습니다.



페이지 추가

 우측 상단의 "New Page" 버튼을 클릭하면 페이지를 추가할 수 있습니다. 모든 페이지는 자동으로 wiki의 sidebar에 알파벳 순서대로 추가됩니다. 물론 자유롭게 수정할 수도 있습니다.



Syntax highlighting

 Wiki 페이지는 아래와 같은 방법을 사용하면 코드의 구문을 강조하는 기능을 지원합니다.

```ruby
 def foo
     puts 'bar'
 end
```

 코드는 반드시 세 개의 backticks로 시작하고, 이어서 옵션으로 사용하는 언어 이름을 기록합니다. 코드 내용을 기록한 다음 반드시 마지막에도 세 개의 backticks을 처음에 나온 backticks와 동일선상에 사용하여 구문강조를 마무리 합니다.



 READMI 파일은 github에서 자주 봤는데 정확히 어떤 역할을 하고 어떻게 작성하는지 알 수 있었습니다. 내용을 정리하면서 나름의 기준을 세웠는데, 짧은 코드나 스크립트는 READMI 위주로 작성하고 비교적 규모가 큰 프로젝트는 wiki 위주로 작성해야 겠습니다.