Go: ์ œ์•ˆ: GOPATH์—์„œ "์‹ฌ๋ณผ๋ฆญ ๋งํฌ" ์ง€์›

์— ๋งŒ๋“  2016๋…„ 05์›” 02์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: golang/go

https://github.com/golang/go/issues/15201#issuecomment -208602586 ๋’ท๋ฉด

์šฐ๋ฆฌ๋Š” cmd/go์™€ ์นœ๊ตฌ๋“ค์ด ํ”Œ๋žซํผ์— ๊ตฌ์• ๋ฐ›์ง€ ์•Š๋Š” ๋ฐฉ์‹์œผ๋กœ GOPATH ํŒจํ‚ค์ง€๋ฅผ ํ™•์ธํ•˜๋Š” ๋™์•ˆ ์ €์žฅ์†Œ ๋‚ด์—์„œ ์‹ฌ๋ณผ๋ฆญ ๋งํฌ์™€ ๊ฐ™์€ ๋™์ž‘์„ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ํ•˜๊ธฐ ์œ„ํ•ด ์ผ๋ฐ˜ ํŒŒ์ผ์„ ํ™œ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.

https://docs.google.com/document/d/1n5y3mZPs_4PjI80a0vZEaHLe7r9PeiiE9xsIrQFT8Is/edit

์˜คํ”„๋ผ์ธ์—์„œ ์ดˆ๊ธฐ ์ƒ๊ฐ์„ ๊ณต์œ ํ•ด ์ค€ @kardianos ์—๊ฒŒ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

_"symlink"๋ผ๋Š” ์ด๋ฆ„์€ ๊ทธ ์ž์ฒด๋กœ ์ข‹์€ ํ† ๋ก ์„ ๋ถˆ๋Ÿฌ์ผ์œผํ‚ฌ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ œ์•ˆ์˜ ํ•ต์‹ฌ๊ณผ ๋ณ„๋„๋กœ ์ด๋ฆ„/๋„ค์ด๋ฐ์— ๋Œ€ํ•ด ๋…ผ์˜ํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

FrozenDueToAge Proposal

๋ชจ๋“  3 ๋Œ“๊ธ€

๋ช‡ ๊ฐ€์ง€ ์˜๊ฒฌ/์งˆ๋ฌธ:

  • "์ €์žฅ์†Œ"๋ผ๋Š” ์šฉ์–ด๋Š” ์ •์˜๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. GOPATH์˜ ์†Œ์Šค ์ฝ”๋“œ๊ฐ€ VSC์—์„œ ์ œ๊ณต๋˜์ง€ ์•Š๊ฑฐ๋‚˜ ๋””๋ ‰ํ† ๋ฆฌ ์ฒดํฌ์•„์›ƒ์„ ์ง€์›ํ•˜๋Š” Subversion์—์„œ ์ œ๊ณต๋˜๋Š” ๊ฒฝ์šฐ ์–ด๋–ป๊ฒŒ ๋ฉ๋‹ˆ๊นŒ?
  • ์ €์žฅ์†Œ์— ์—ฌ๋Ÿฌ ๊ณต์šฉ ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉด ์ข…์†์„ฑ์„ ์—ฌ๋Ÿฌ ๋ฒˆ ๋ณต์‚ฌํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๊ณต๊ธ‰์—…์ฒด ์ข…์†์„ฑ์€ cmd/vendor ์•„๋ž˜์— ๋ฐฐ์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋‚ด๊ฐ€ ๋งํ•  ์ˆ˜ ์žˆ๋Š” ํ•œ ์ด ์ œ์•ˆ์€ "๊ฐ™์€ ์ €์žฅ์†Œ์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ํ”„๋กœ๊ทธ๋žจ" ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.

@kostya-sh

"์ €์žฅ์†Œ"๋ผ๋Š” ์šฉ์–ด๊ฐ€ ์ •์˜๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.

์ฒซ ๋ฒˆ์งธ ๊ฐ์ฃผ๋Š” ์„ธ๋ถ€ ์‚ฌํ•ญ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ ์—์„œ ๊ฐ€์ •ํ•œ ๊ฒƒ๊ณผ ๋™์ผํ•œ ์ •์˜์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ "์ €์žฅ์†Œ"๊ฐ€ ๊ณต์‹์ ์œผ๋กœ ์–ด๋”˜๊ฐ€์— ์ •์˜๋˜์–ด ์žˆ๋Š”์ง€ ์—ฌ๋ถ€์— ๋Œ€ํ•œ ์งˆ๋ฌธ์ด ์—ฌ์ „ํžˆ ๋‚จ์•„ ์žˆ๋‹ค๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค.

GOPATH์˜ ์†Œ์Šค ์ฝ”๋“œ๊ฐ€ VSC์—์„œ ์ œ๊ณต๋˜์ง€ ์•Š๊ฑฐ๋‚˜ ๋””๋ ‰ํ† ๋ฆฌ ์ฒดํฌ์•„์›ƒ์„ ์ง€์›ํ•˜๋Š” Subversion์—์„œ ์ œ๊ณต๋˜๋Š” ๊ฒฝ์šฐ ์–ด๋–ป๊ฒŒ ๋ฉ๋‹ˆ๊นŒ?

๊ณต๊ฐœ ์งˆ๋ฌธ - ์ง€๊ธˆ๊นŒ์ง€ "์ €์žฅ์†Œ"์˜ ์ผ๋ถ€์ธ ์ฝ”๋“œ์— ๋Œ€ํ•œ ์œ ์ผํ•œ ๊ณ ๋ ค ์‚ฌํ•ญ์ด ์žˆ์Œ์„ ์ธ์ •ํ•ฉ๋‹ˆ๋‹ค. ์ด ์งˆ๋ฌธ์„ ์ฐธ์กฐํ•˜๋Š” ํ•˜๋‹จ์— "๊ณต๊ฐœ ์งˆ๋ฌธ" ์„น์…˜์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ €์žฅ์†Œ์— ์—ฌ๋Ÿฌ ๊ณต์šฉ ๋ฐ”์ด๋„ˆ๋ฆฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉด ์ข…์†์„ฑ์„ ์—ฌ๋Ÿฌ ๋ฒˆ ๋ณต์‚ฌํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๊ณต๊ธ‰์—…์ฒด ์ข…์†์„ฑ์€ cmd/vendor ์•„๋ž˜์— ๋ฐฐ์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์‹ค์ œ๋กœ ์ด๊ฒƒ์€ ๋ฐ”์ด๋„ˆ๋ฆฌ ๊ฐ„์— ๊ณต๊ธ‰์—…์ฒด ์ฝ”๋“œ๋ฅผ ๊ณต์œ ํ•˜๋Š” ํ•œ ๊ฐ€์ง€ ์ ‘๊ทผ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ "symlink" ์ ‘๊ทผ ๋ฐฉ์‹์€ ํ•ด๋‹น "vendor"๋ฅผ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์ฝ”๋“œ์™€ ๊ณต์œ ํ•˜๋Š” ์ ‘๊ทผ ๋ฐฉ์‹์„ ์šฉ์ดํ•˜๊ฒŒ ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค(๋‹ค์Œ ํ•ญ๋ชฉ ์ฐธ์กฐ).

๋‚ด๊ฐ€ ๋งํ•  ์ˆ˜ ์žˆ๋Š” ํ•œ ์ด ์ œ์•ˆ์€ "๊ฐ™์€ ์ €์žฅ์†Œ์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ํ”„๋กœ๊ทธ๋žจ" ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค.

์ด ์ œ์•ˆ ์ž์ฒด๋Š” ๊ทธ๋ ‡์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ "๋™๊ธฐ ๋ถ€์—ฌ ์˜ˆ์ œ" ์„น์…˜์—์„œ ๋งํฌ๋œ ์ €์žฅ์†Œ๋Š” "symlinks"์™€ GOPATH ๊ธฐ๋Šฅ ๋ณด๊ฐ•์˜ ์กฐํ•ฉ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด๋‹น ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋Š” ๋„ˆ๋ฌด ๋ฌธ์ œ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. ํ—ˆ์šฉํ•˜๋Š” ๊ฒƒ์€ ํ˜„๋ช…ํ•˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰