AI 요약
Go 언어는 코드 네임스페이스에 코드를 가져올 위치(git 호스팅 주소)를 그대로 사용하는 특징이 있는데, 이로 인해 코드가 GitHub 같은 특정 호스팅 제공자에 종속되는 문제가 발생한다. 저자는 한 회사가 GitLab, GitHub, Azure DevOps를 동시에 운영하며 비용을 낭비한 사례를 언급하며, 커스텀 도메인(예: go.iain.rocks)을 사용해 호스팅 위치를 유연하게 변경할 것을 권장한다. Nginx 설정 예시와 함께 Go 도구의 ?go-get=1 쿼리를 활용한 리다이렉트 구성도 제공한다.
핵심 포인트
- Go의 import 경로가 git 호스팅 주소와 직결되어 호스팅 이전 시 코드 수정이 불가피함
- 한 기업이 세 개의 git 호스팅 플랫폼을 동시에 운영하며 비용 손실을 겪은 사례 존재
- 커스텀 도메인(go.uber.org, go.mongodb.org 등)을 사용하면 호스팅 이전 시에도 사용자 명령어 변경 불필요
- Nginx에서
go-get=1쿼리 유무에 따라 사람과 Go 도구를 구분해 처리하는 설정 제공
향후 전망
- 상용 Go 개발팀의 내부 라이브러리 네임스페이싱에 커스텀 도메인 도입이 확산될 가능성
- 호스팅 종속성 문제를 해결하기 위한 도구(Boneclone 등)의 수요 증가 예상
출처:hackernews
