Github를 자주 이용한다면 저장소(Repository)를 보다 완성도 있게 만들고 싶은 욕구가 생깁니다(?). 실제 유명한 오픈소스 프로젝트 역시 두리번거리다 보면 하나같이 공통점이 있는데요. 바로 라이선스를 명시하고 있다는 것입니다. 사실 많은 분이 간과하고 있는 점 중 하나가 라이선스 명시를 지키지 않는 부분인데요. 오픈소스 생태계에서 이 부분은 되게 중요합니다. 저도 경각심을 가지고 이번 포스팅을 작성하게 되었습니다.
대표적인 S/W 라이선스로 GPL이나 BSD, MIT 등등 많은 종류가 있는데, 이번에는 자신의 Github 저장소에 라이선스를 추가해보도록 하겠습니다. 실제로 그렇게 어렵지 않으니 한번 정리해놓으면 그다음부터는 손쉽게 진행할 수 있습니다.
원격 저장소 확인 및 새 파일 생성
먼저 라이선스를 표기할 필요가 있는 원격 저장소 하나가 필요합니다. 만약 어떤 프로젝트를 개발하다 라이선스를 가지고 있는 모듈이나 코드 등을 사용했는지 확인해봅니다. 해당하는 Repository로 가서 Create new file 버튼을 클릭합니다.
LICENSE 만들기
아래의 스크린샷에 보면 [저장소 이름]/○○○ 부분이 보입니다. 여기에 LICENSE를 입력하게 되면 마법같이 Choose a license template 버튼이 생깁니다. 만약 독자적인 양식이 있는 라이선스가 있다면 이 버튼을 누르지 않고 하단의 Edit new file에서 수동으로 작성하면 됩니다. 보통은 파일 이름을 LICENSE까지만 해두는 경우가 많지만, LICENSE.md, license.txt 등 자유롭게 명명할 수 있습니다.
이번 실습에서는 자주 사용하는 라이선스 템플릿을 이용해보도록 하겠습니다. Choose a license template 버튼을 클릭합니다.
해당하는 라이선스 선택
대표적으로 많이 사용되고 있는 라이선스 종류가 있습니다. 자신에게 해당하는 것을 클릭하면 됩니다.
라이선스 내용 작성
본 프로젝트의 년도와 이름을 기입하고 Review and submit 버튼을 누르면 라이선스 파일이 생성됩니다.
라이선스 템플릿 완성
이 과정까지 마치면 방금 봤던 곳으로 돌아오게 됩니다. 내용을 확인하고 이상이 없다면 하단 부분으로 이동합니다.
라이선스 커밋
깃허브를 자주 이용한다면 익숙한 창이죠? 만약 그렇지 않아도 괜찮습니다. 라이선스 역시 Git의 스냅샷으로 관리되어 변경사항을 커밋해줘야 합니다. 간단하게 코멘트를 남겨도 되고 비워 두어도 상관없습니다.
밑에는 선택 옵션이 2개가 있는데요. 대강 내용은 이렇습니다.
- Commit directly to the master branch: 해당 라이선스 파일을 master 브랜치로 Push
- Create a new branch for this commit and start a pull request: master 이외의 다른 브랜치로 커밋 후 Pull Request
성공적으로 라이선스를 등록한 것을 확인
아까 없었던 탭이 하나 생기면서 라이선스가 보이네요! 흐뭇합니다.