튜토리얼 참고 : https://go.dev/doc/tutorial/workspaces
이 페이지에선, golang 1.18부터 지원하는 workspace의 간단한 사용법을 정리합니다. (짧게, 기록용으로)
여러개의 프로젝트, 혹은 모듈들을 동시에 수정해가며 작업할 때, 각 폴더들이 들어가는 최상단 폴더에서 사용한다. go workspace에서
vscode ➜ /workspaces $ tree -L 1
.
├── hello
└── my-pkg
2 directories, 0 files
특정 기능을 패키지에 넣고, 해당 기능을 hello 프로젝트에서 사용하는 상황일 때 (동시에 수정이 필요할 때)
매번 replcae를 사용하거나 번갈아 git push, get 하기가 귀찮을 때
사용하면 된다.
최상단 디렉터리에서 다음 명령어를 실행한다.
vscode ➜ /workspaces $ go work init
vscode ➜ /workspaces $ tree -L 1
.
├── hello
├── go.work
└── my-pkg
2 directories, 1 file
workspace는 go.work에 정의되는데, 지금은 go가 어떤 버전으로 쓰였는지만 기술된 상태다.
vscode ➜ /workspaces $ cat go.work
go 1.19
my-pkg를 workspace에 추가한다.
vscode ➜ /workspaces $ go work use my-pkg/
vscode ➜ /workspaces $ cat go.work
go 1.19
use ./my-pkg
이제 별도의 작업 없이, 로컬의 my-pkg 코드를 이용해 hello를 개발 할 수 있다.