๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์˜ค๋ฅ˜ ํ•ด๊ฒฐ

์šฉ๋Ÿ‰ ๋ฌธ์ œ๋กœ Git ๋ฆฌํฌ์ง€ํ† ๋ฆฌ push ์‹คํŒจ

by syLim___ 2024. 10. 16.
728x90

โœ… ์„œ๋ก 

๋ช‡ ๋‹ฌ ์ „ ๋ฐœ์ƒํ–ˆ๋˜ ์—๋Ÿฌ์ด๋‹ค.

ํ•ด๊ฒฐ๋ฒ•์„ ์ •๋ฆฌํ•ด๋‘๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™์•„์„œ ํฌ์ŠคํŒ…ํ•œ๋‹ค.

 

โœ… ์—๋Ÿฌ ์ƒํ™ฉ

์ž๋ฐ”์˜ ์Šค์œ™ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ์•„์ฃผ ๊ฐ„๋‹จํ•œ ๊ฒŒ์ž„์„ ํ•˜๋‚˜ ๋งŒ๋“ค์—ˆ๋‹ค.

๋ฐฐํฌ์šฉ ์„ค์น˜ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด์„œ ์›๊ฒฉ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— push๋ฅผ ์‹œ๋„ํ–ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ์„ค์น˜ํŒŒ์ผ ์šฉ๋Ÿ‰์ด ํฐ ๊ด€๊ณ„๋กœ, push์— ์‹คํŒจํ•˜๊ณ  ์—๋Ÿฌ ๋ฉ”์‹œ์ง€๊ฐ€ ์ถœ๋ ฅ๋˜์—ˆ๋‹ค.

 

โœ… ์—๋Ÿฌ ํ•ด๊ฒฐ

๋ฐฉ๋ฒ•์„ ์ฐพ์•„๋ณด๋‹ˆ Git LFS(Large File Storage)๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค๊ณ  ํ•œ๋‹ค.

Git LFS๋Š” ์šฉ๋Ÿ‰์ด ํฐ ํŒŒ์ผ์„ GitHub ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๊ฐ€ ์•„๋‹ˆ๋ผ ๋ณ„๋„์˜ ์„œ๋ฒ„์— ์˜ฌ๋ฆฌ๊ณ , ์›๋ž˜ ์œ„์น˜์—๋Š” ํฌ์ธํ„ฐ๋งŒ ๋‚จ๊ธฐ๋Š” ๋ฐฉ์‹์œผ๋กœ

์šฉ๋Ÿ‰์ด ํฐ ํŒŒ์ผ์„ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— pushํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค€๋‹ค๊ณ  ํ•œ๋‹ค.

 

๊ณ„์ •๋‹น 2GB๊นŒ์ง€๋งŒ ์ง€์›ํ•ด์ค€๋‹ค๊ณ  ํ•˜๋‹ˆ ๊ผญ ํ•„์š”ํ•  ๋•Œ๋งŒ ์จ์•ผ๊ฒ ๋‹ค.

 

๋‚˜๊ฐ™์€ ๊ฒฝ์šฐ๋Š” ์›๊ฒฉ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๋ฐฐํฌ ํŒŒ์ผ์„ ๋ฐ˜๋“œ์‹œ ์˜ฌ๋ฆด ํ•„์š”๋Š” ์—†์—ˆ์ง€๋งŒ,

์ด ๊ธฐํšŒ์— Git LFS ๋ฅผ ์ด์šฉํ•ด๋ณด๊ณ  ์‹ถ์–ด์„œ ํ•ด๋‹น ํŒŒ์ผ์„ ์—…๋กœ๋“œ ํ•ด๋ณด์•˜๋‹ค.


Git LFS๋กœ ํŒŒ์ผ ์—…๋กœ๋“œ ๋ฐฉ๋ฒ•

1. Git LFS ์„ค์น˜ํ•˜๊ธฐ

๋‚˜๋Š” macOS ์œ ์ €์ด๊ธฐ ๋•Œ๋ฌธ์— homebrew๋กœ ์„ค์น˜ํ•ด ์ฃผ์—ˆ๋‹ค.

ํ„ฐ๋ฏธ๋„์— `brew install git-lfs`๋ฅผ ์ž…๋ ฅํ•ด ์ฃผ์—ˆ๋‹ค.

 

๊ทธ๋‹ค์Œ, ํ˜„์žฌ ์ž‘์—…์ค‘์ธ ๊นƒ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๋‚ด์—์„œ git lfs๋ฅผ ์‚ฌ์šฉํ•˜๊ฒ ๋‹ค๊ณ  ์„ ์–ธํ–ˆ๋‹ค.

ํ„ฐ๋ฏธ๋„์— `git lfs install` ๋ฅผ ์ž…๋ ฅํ•ด์ฃผ์—ˆ๋‹ค.

 

๋ฆฌํฌ์ง€ํ† ๋ฆฌ ์™ธ๋ถ€ ๊ฒฝ๋กœ์—์„œ ํ•ด๋‹น ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ์ „์—ญ์ ์œผ๋กœ ๋ชจ๋“  ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—์„œ Git LFS๋ฅผ ์“ธ ์ˆ˜ ์žˆ๋‹ค๊ณ  ํ•œ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ๋‚˜๋Š” ๋‚ด๊ฐ€ ์ž‘์—…์ค‘์ธ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๋‚ด๋ถ€์—์„œ ํ•ด๋‹น ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•ด์ฃผ์—ˆ๋‹ค.

 

๊ทธ๋Ÿฌ๋ฉด "Git LFS initialized." ๋ผ๋Š” ๋กœ๊ทธ๊ฐ€ ์ฐํžŒ๋‹ค.

 

2. ๋งˆ์ง€๋ง‰ ์ปค๋ฐ‹ ์ทจ์†Œ

ํŒŒ์ผ ์šฉ๋Ÿ‰ ๋•Œ๋ฌธ์— ๋งˆ์ง€๋ง‰ ์ปค๋ฐ‹์— ๋ฐฐํฌํŒŒ์ผ์ด ์ถ”๊ฐ€๋˜์ง€ ์•Š์•˜๋‹ค.

ํ„ฐ๋ฏธ๋„์— `git reset HEAD^` ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ๋งˆ์ง€๋ง‰ ์ปค๋ฐ‹์„ ์ทจ์†Œํ•ด ์ฃผ์—ˆ๋‹ค.

 

3. ์šฉ๋Ÿ‰์ด ํฐ ํŒŒ์ผ๋“ค์„ Git LFS๋กœ ํŠธ๋ž˜ํ‚นํ•˜๋„๋ก ์„ค์ •

ํ„ฐ๋ฏธ๋„์— `git lfs track "ํŒŒ์ผ๊ฒฝ๋กœ"`๋ฅผ ์ž…๋ ฅํ•˜๋ฉด, ํ•ด๋‹น ํŒŒ์ผ์„ Git LFS๋กœ ํŠธ๋ž˜ํ‚นํ•˜๋„๋ก ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.

๋‚˜๋Š” ๋ฐฐํฌ ํŒŒ์ผ๊ณผ ์šฉ๋Ÿ‰์ด ํฐ wav ํŒŒ์ผ๋“ค์„ ํŠธ๋ž˜ํ‚นํ•˜๋„๋ก ์„ค์ •ํ•˜์˜€๋‹ค.

์ฐธ๊ณ ๋กœ, wavํŒŒ์ผ์€ bgm๊ณผ ํšจ๊ณผ์Œ ์›๋ณธ ํŒŒ์ผ์ด๋‹ค.

 

cat .gitattributes ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ํŠธ๋ž˜ํ‚น ๋Œ€์ƒ ๋ชฉ๋ก ํ™•์ธ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

4. ํŠธ๋ž˜ํ‚นํ•œ ํŒŒ์ผ๋“ค์„ ์Šคํ…Œ์ด์ง•ํ•˜๊ณ  ๋‹ค์‹œ ์ปค๋ฐ‹, pushํ•˜๊ธฐ

 

๋Š˜ ํ•˜๋˜๋Œ€๋กœ git add์™€ git commit ๋ช…๋ น์–ด๋ฅผ ์ด์šฉํ•˜์—ฌ, ์›ํ•˜๋Š” ํŒŒ์ผ๋“ค์„ ์Šคํ…Œ์ด์ง•ํ•˜๊ณ  ์ปค๋ฐ‹ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

 

์ปค๋ฐ‹ํ•˜๊ธฐ ์ „ Git LFS๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์Šคํ…Œ์ด์ง•๋œ ํŒŒ์ผ ๋ชฉ๋ก์„ ํ™•์ธํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด `git lsf ls-files` ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๋œ๋‹ค.

 

๊ทธ ๋‹ค์Œ, git push ๋ช…๋ น์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์›๊ฒฉ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์— ๋‹ค์‹œ push ๋ฅผ ์‹œ๋„ํ•ด ์ฃผ์—ˆ๋‹ค.

๊ทธ๋Ÿฌ์ž ์ •์ƒ์ ์œผ๋กœ push๊ฐ€ ์™„๋ฃŒ๋˜์—ˆ๋‹ค.

 

728x90