[Go] workspace
๊ด๋ จ ํฌ์คํธ
https://blog.naver.com/sssang97/222972305361
์ํฌ์คํ์ด์ค๋ Go 1.18๋ถํฐ ์ถ๊ฐ๋ ๋ชจ๋ ๊ด๋ฆฌ ๋ถ๊ฐ๊ธฐ๋ฅ์ด๋ค.
ํ๋์ ๊ณต๊ฐ์์ ์ฌ๋ฌ๊ฐ์ ๋ชจ๋๋ค์ ๋ชจ์๋๊ณ ๊ด๋ฆฌํ๊ธฐ ์ํ ๊ธฐ๋ฅ์ด๋ผ๊ณ ํ ์ ์๋ค.
์ ํํ๋ ์ข, ์ข
์์ฑ ๋ชจ๋๋ค์ local๋ก ๋ค์ด๋ฐ์์ ๋๋ฆฌ๋ ์ ์ค์ผ์ด์ค์ ํนํ๋ ๊ฒ ๊ฐ๋ค. ์์ธ์ง๋ ๋ชจ๋ฅด๊ฒ ์ง๋ง ๊ทธ๋ ๊ฒ ์ฐ๋ ๊ฒฝ์ฐ๊ฐ ๋๋จํ ๋ง์๊ฐ๋ณด๋ค.
์ํฌ์คํ์ด์ค ๋ง๋ค๊ธฐ
์ฐ์ ์ํฌ์คํ์ด์ค์ฉ ๋๋ ํฐ๋ฆฌ๋ฅผ ๋ง๋ค์ด์ฃผ๊ฒ ๋ค.
๋ณ๊ฑด ์๋ค.
์คํํ ๋ชจ๋ ์ถ๊ฐํ๊ธฐ
๊ทธ๋ผ ์ด์ ์ ๊ธฐ๋ค๊ฐ ์คํ์ ์ฃผ์ฒด๊ฐ ๋ executable ๋ชจ๋์ ํ๋ ์๋ธ๋ก ์ถ๊ฐํ๊ฒ ๋ค.
๊ทธ๋ฅ ํ์์ ํ๋ก์ ํธ ํ๋ฏ์ด ๋ง๋ค์ด์ฃผ๋ฉด ๋๋ค.

์ง์ ํ๋ฒ ๋๋ ค๋ณด๊ณ
์ด์ ์ข ์์ฑ์ผ๋ก ์ฌ์ฉํ ๋ชจ๋์ ๋ค์ด๋ฐ์์ฃผ๊ฒ ๋ค.
์ ๊ฑธ ๋์ค์๋ ์ํฌ์คํ์ด์ค์๋ ์ถ๊ฐํด์ค ๊ฒ์ด๋ค.
์ฝ๋๋ ๋์ถฉ ์ด๋ ๋ค.

์ํฌ์คํ์ด์ค ์ฐ๊ฒฐํ๊ธฐ
๋์ผ๋ฉด ์ด์ ์ ๋ชจ๋์ ์ํฌ์คํ์ด์ค์ ์ฐ๊ฒฐํด์ฃผ์.
์ต์ด์๋ work init ๋ช
๋ น์ ์ฌ์ฉํ๋ฉด ๋๋ค.

๊ทธ๋ผ ์ํฌ์คํ์ด์ค ๋ฃจํธ๊ฒฝ๋ก์ ๊ด๋ฆฌํ์ผ์ด ์ถ๊ฐ๋์์ ๊ฒ์ด๋ค.

๊ทธ๋ผ ์ด์ ์ํฌ์คํ์ด์ค ๋จ์์์ ์ ๋ชจ๋๋ค์ ์คํํ ์ ์๋ค.

์ข ์ ๋ชจ๋ ์ถ๊ฐํ๊ธฐ
๊ทธ๋ผ ๋ฐฉ๊ธ๊น์ง๋ go get์ผ๋ก๋ง ๋ฐ์์ ์ฐ๋ ๊ฒ์ ๋ก์ปฌ๋ชจ๋๋ก ๋ด๋ ค๋ฐ์์ ์จ๋ณด๋๋ก ํ๊ฒ ๋ค.
ํด๋ก ์ ๋จผ์ ๋ฐ๊ณ

๊ทธ๋ฆฌ๊ณ ๊ทธ ๊ฒฝ๋ก๋ฅผ work use ๋ช ๋ น์ผ๋ก ์ฐ๋ํด์ค๋ค.

๊ทธ๋ผ ๋ง์ฐฌ๊ฐ์ง๋ก work ๊ด๋ฆฌํ์ผ์ ์ถ๊ฐ๊ฐ ๋ ๊ฒ์ด๋ค.

๊ทธ๋ผ ์ด์ ์ด ์ํฌ์คํ์ด์ค์์ "https://github.com/myyrakle/go-test-lib" ๋ชจ๋์ ์ฌ์ฉํ ๊ฒฝ์ฐ์๋, ์ ๋ด๋ ค๋ฐ์ ๋ก์ปฌ๋ชจ๋์ ๋์ ๊ฐ๋ฆฌํค๊ฒ ๋๋ค.
๋ฐ๊ฟ์ ์คํํด๋ณด๋ฉด

์ ์ ์ฉ๋์ด์์ ๊ฒ์ด๋ค.
์ด๋ฐ ๊ฑฐ์ฐฝํ๋ฉด์๋ ๋ณ๊ฑฐ์๋๊ฑฐ๊ฐ์ ๊ธฐ๋ฅ์ด ์ ์๋์ง ๊ถ๊ธํ๋ค๋ฉด, ์๋ ๊ธ ์ฐธ๊ณ ํด๋ณด๋ฉด ๋๊ฒ ๋ค.
https://blog.naver.com/sssang97/222972305361
์ฐธ์กฐ
https://go.dev/doc/tutorial/workspaces
https://dev.to/gophers/what-are-go-workspaces-and-how-do-i-use-them-1643
https://go.dev/blog/get-familiar-with-workspaces