[Go] go cli ์ •๋ฆฌ

๋”ฐ๋กœ ์ •๋ฆฌํ•œ์ ์ด ์—†๋Š” ๊ฒƒ ๊ฐ™์•„์„œ ์ •๋ฆฌํ•ด๋ณธ๋‹ค.

์ž์ฃผ ์“ฐ์ด๋Š” ๊ธฐ๋ณธ์ ์ธ ๊ฒƒ๋งŒ ๋„ฃ์–ด๋†จ๋‹ค.




go mod init

nodejs์„ ์จ๋ดค๋‹ค๋ฉด, npm init๊ณผ ๋น„์Šทํ•˜๋‹ค๊ณ  ๋ณด๋ฉด ๋œ๋‹ค.
ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๊ฐ€์žฅ ๋จผ์ € ์‚ฌ์šฉํ•ด์•ผํ•  ๋ช…๋ น์ด๋‹ค.

์ด๊ฑธ ํ†ตํ•ด ๋ชจ๋“ˆ config ํŒŒ์ผ์ธ go.mod๋ฅผ ์ƒ์„ฑํ•œ๋‹ค.




go run

์†Œ์Šค์ฝ”๋“œ๋ฅผ ๋ฐ”๋กœ ์‹คํ–‰ํ•˜๋Š” ๋ช…๋ น์ด๋‹ค.




go build

์†Œ์Šค์ฝ”๋“œ๋ฅผ ๋ฐ”์ด๋„ˆ๋ฆฌ๋กœ ๋นŒ๋“œํ•˜๋Š” ๋ช…๋ น์ด๋‹ค.




go get

go์—์„œ ์„œ๋“œํŒŒํ‹ฐ ๋ชจ๋“ˆ์„ ๋‹ค์šด๋ฐ›๋Š” ์ฒซ๋ฒˆ์งธ ๋ฐฉ๋ฒ•์ด๋‹ค.
์†Œ์Šค์ฝ”๋“œ๋ฅผ ๋‹ค์šด๋ฐ›๊ณ , ์ข…์†์„ฑ ๊ด€๋ฆฌํŒŒ์ผ์ธ go.mod์™€ go.sum์„ ์ž๋™์œผ๋กœ ์กฐ์ •ํ•œ๋‹ค.




go mod tidy

์ด๊ฒƒ๋„ ๋ชจ๋“ˆ ์„ค์น˜ํ•˜๋Š” ๋ช…๋ น์ธ๋ฐ, go get๊ณผ ์„ ํ›„๊ด€๊ณ„๊ฐ€ ๋‹ค๋ฅด๋‹ค.
์ฝ”๋“œ์—์„œ ์„ค์น˜๋˜์ง€ ์•Š์€ ๋ชจ๋“ˆ์ด ์žˆ๋‹ค๋ฉด, ๊ทธ๊ฑธ ๋‹ค์šด๋ฐ›๊ณ  go.mod์™€ go.sum์— ๋ฐ˜์˜ํ•œ๋‹ค.




go install

์ด๊ฑด ๋‚ด ํ”„๋กœ์ ํŠธ์— ๋ชจ๋“ˆ์„ ์„ค์น˜ํ•˜๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ, ์ด๋ฏธ ์™„์„ฑ๋œ CLI ์‹คํ–‰ํŒŒ์ผ์„ ์„ค์น˜ํ• ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

๊ทธ๋ƒฅ Go๋กœ ์ž‘์„ฑ๋œ CLI tool๋“ค์„ ์„ค์น˜ํ• ๋•Œ ์“ด๋‹ค.

์ด๊ฑธ๋กœ ์„ค์น˜๋œ ํŒŒ์ผ์€ GOBIN ํ™˜๊ฒฝ๋ณ€์ˆ˜์— ์ง€์ •๋œ ๊ฒฝ๋กœ์— ๊น”๋ฆฐ๋‹ค.