Search

Git Release

Git Release

Git Release๋Š” ์†Œํ”„ํŠธ์›จ์–ด์˜ ํŠน์ • ๋ฒ„์ „์„ ๊ณต์‹์ ์œผ๋กœ ๋ฐฐํฌํ•˜๋Š” ๊ณผ์ •์œผ๋กœ, ์•ˆ์ •์ ์ธ ์ฝ”๋“œ ์Šค๋ƒ…์ƒท์„ ํƒœ๊ทธ๋กœ ํ‘œ์‹œํ•˜์—ฌ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ๊ณตํ•˜๋Š” ํ•ต์‹ฌ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.
๋ฆด๋ฆฌ์Šค(Release)๋ž€? ๋ฆด๋ฆฌ์Šค๋Š” ๊ฐœ๋ฐœ๋œ ์†Œํ”„ํŠธ์›จ์–ด์˜ ํŠน์ • ๋ฒ„์ „์„ ์‚ฌ์šฉ์ž์—๊ฒŒ ๊ณต์‹์ ์œผ๋กœ ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. Git์—์„œ๋Š” ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํŠน์ • ์ปค๋ฐ‹์„ ๋ฆด๋ฆฌ์Šค ๋ฒ„์ „์œผ๋กœ ํ‘œ์‹œํ•˜๊ณ , ์ด๋ฅผ ํ†ตํ•ด ์•ˆ์ •์ ์ธ ๋ฒ„์ „์„ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. โ€ข ๋ฆด๋ฆฌ์Šค๋Š” ์ฃผ๋กœ ์‹œ๋งจํ‹ฑ ๋ฒ„์ €๋‹(Semantic Versioning)์„ ๋”ฐ๋ผ v1.0.0, v2.1.3๊ณผ ๊ฐ™์€ ํ˜•์‹์œผ๋กœ ๋ช…๋ช…๋ฉ๋‹ˆ๋‹ค. โ€ข ๊ฐ ๋ฆด๋ฆฌ์Šค๋Š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ, ๋ฒ„๊ทธ ์ˆ˜์ •, ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ๋“ฑ์„ ํฌํ•จํ•œ ๋ฆด๋ฆฌ์Šค ๋…ธํŠธ์™€ ํ•จ๊ป˜ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. โ€ข GitHub, GitLab ๋“ฑ์˜ ํ”Œ๋žซํผ์—์„œ๋Š” ๋ฆด๋ฆฌ์Šค ํŽ˜์ด์ง€๋ฅผ ํ†ตํ•ด ์†Œ์Šค ์ฝ”๋“œ, ๋ฐ”์ด๋„ˆ๋ฆฌ ํŒŒ์ผ ๋“ฑ์„ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ๊ฒŒ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

Git Release ๋ช…๋ น์–ด

๊ธฐ๋ณธ ๋ช…๋ น์–ด

git tag -a v1.0.0 -m "๋ฆด๋ฆฌ์Šค ๋ฉ”์‹œ์ง€"
Bash
๋ณต์‚ฌ
ํŠน์ • ์ปค๋ฐ‹์— ํƒœ๊ทธ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๋ฆด๋ฆฌ์Šค ๋ฒ„์ „์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
ํƒœ๊ทธ ์ด๋ฆ„๊ณผ ๋ฉ”์‹œ์ง€๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ๋ฆด๋ฆฌ์Šค์˜ ์˜๋ฏธ๋ฅผ ๋ช…ํ™•ํžˆ ํ•ฉ๋‹ˆ๋‹ค.

Release ๊ด€๋ จ ๋ช…๋ น์–ด

๋ช…๋ น์–ด
์„ค๋ช…
git tag
๋ชจ๋“  ํƒœ๊ทธ ๋ชฉ๋ก์„ ์กฐํšŒํ•ฉ๋‹ˆ๋‹ค.
git tag -a v1.0.0 -m "๋ฉ”์‹œ์ง€"
์ฃผ์„์ด ํฌํ•จ๋œ ํƒœ๊ทธ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
git push origin v1.0.0
ํŠน์ • ํƒœ๊ทธ๋ฅผ ์›๊ฒฉ ์ €์žฅ์†Œ์— ํ‘ธ์‹œํ•ฉ๋‹ˆ๋‹ค.
git push origin --tags
๋ชจ๋“  ํƒœ๊ทธ๋ฅผ ์›๊ฒฉ ์ €์žฅ์†Œ์— ํ‘ธ์‹œํ•ฉ๋‹ˆ๋‹ค.
git tag -d v1.0.0
๋กœ์ปฌ ํƒœ๊ทธ๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.
git push origin --delete v1.0.0
์›๊ฒฉ ์ €์žฅ์†Œ์˜ ํƒœ๊ทธ๋ฅผ ์‚ญ์ œํ•ฉ๋‹ˆ๋‹ค.
git checkout v1.0.0
ํŠน์ • ๋ฆด๋ฆฌ์Šค ๋ฒ„์ „์œผ๋กœ ์ฒดํฌ์•„์›ƒํ•ฉ๋‹ˆ๋‹ค.