Basix Knowledge Base

Powered by ๐ŸŒฑRoam Garden

Git

Linus Torvalds๊ฐ€ ๋‹ค๋ฅธ ํ˜•์ƒ ๊ด€๋ฆฌ ๋„๊ตฌ ์“ฐ๋‹ค๊ฐ€ ๋ง˜์— ๋“œ๋Š” ๊ฒŒ ํ•˜๋‚˜๋„ ์—†๋‹ค๊ณ  ์ง์ ‘ ๋งŒ๋“ค์–ด ์“ฐ๊ธฐ ์‹œ์ž‘ํ•ด์„œ ์ด์ œ ๋‹ค๋“ค ์“ฐ๋Š” ํ˜•์ƒ ๊ด€๋ฆฌ ๋„๊ตฌ.

ํŒ

Shallow clones

์•„์ฃผ ์ปค๋‹ค๋ž€ Git ์ €์žฅ์†Œ๋ฅผ ๊ฐ€์ ธ์˜ฌ ๋•Œ ๊ณผ๊ฑฐ ์ปค๋ฐ‹์— ์ ‘๊ทผํ•  ํ•„์š”๊ฐ€ ์—†๋‹ค๋ฉด fetch๋‚˜ clone ์‹œ --depth 1 ์˜ต์…˜์„ ์ด์šฉํ•ด shallow clone์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

์ดํ›„ ๊ณผ๊ฑฐ ์ปค๋ฐ‹์ด ํ•„์š”ํ•˜๋‹ค๋ฉด git fetch --unshallow ๋ฅผ ํ•˜๋ฉด ๋œ๋‹ค.

Submodules

git submodule update --init --recursive ๋ฅผ ํ•˜๋ฉด HEAD์˜ ์ƒํƒœ๋กœ ์„œ๋ธŒ๋ชจ๋“ˆ๋“ค์„ ์ž˜ ๋™๊ธฐํ™”ํ•ด์ค€๋‹ค.

์ผœ๋ ค๋ฉด git config core.symlinks true ๋“ฑ์œผ๋กœ ์ž„์˜๋กœ ์ผœ ์ค˜์•ผ ํ•จ

Fast-forward ๋จธ์ง€๋Š” checkoutํ•˜์ง€ ์•Š์•„๋„ ํ•  ์ˆ˜ ์žˆ๋‹ค

git fetch origin main:main ํ•˜๋ฉด main ๋ธŒ๋žœ์น˜๊ฐ€ Fast-forward ๋œ๋‹ค

fetchํ•  ๋•Œ ์—…๋ฐ์ดํŠธ๋˜๋Š” ๋ธŒ๋žœ์น˜๋Š” refspec์— ๋”ฐ๋ผ ์ •ํ•ด์ง„๋‹ค

GitHub CLI๋Š” ํฌํฌ๋œ ์ €์žฅ์†Œ๋ฅผ ํด๋ก ํ•  ๋•Œ upstream์˜ refspec์„ ์ฃผ์š” ๋ธŒ๋žœ์น˜ ํ•˜๋‚˜๋กœ ํ•œ์ •ํ•˜๋ฏ€๋กœ ๊ธฐ์–ตํ•ด๋‘๋Š” ํŽธ์ด ์ข‹๋‹ค

๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ Pull Request๋‚˜ ๋ธŒ๋žœ์น˜ ๋“ฑ์„ ๊ฑฐ์น˜์ง€ ์•Š๊ณ  ๋น ๋ฅด๊ฒŒ ๊ณต์œ ํ•  ํ•„์š”์„ฑ์ด ์žˆ๋Š” ๊ฒฝ์šฐ Git์˜ format-patch์™€ am ์ปค๋งจ๋“œ๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

์‹ค์ œ๋กœ Linux์™€ ๊ฐ™์€ ์˜ค๋ž˜๋œ ํ”„๋กœ์ ํŠธ๋Š” ๋ฉ”์ผ๋ง ๋ฆฌ์ŠคํŠธ์— ์ด๋Ÿฌํ•œ patch ํŒŒ์ผ์„ ๋ณด๋‚ด Pull Request์™€ ์œ ์‚ฌํ•˜๊ฒŒ ์‚ฌ์šฉํ•œ๋‹ค.

์ž˜ ์•Œ๋ ค์ง€์ง€ ์•Š์€ ๊ธฐ๋Šฅ์ด๋‹ค ๋ณด๋‹ˆ ์‚ฌ์šฉํ•  ๋•Œ ๋™๋ฃŒ๋“ค์—๊ฒŒ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•๋„ ๊ท€๋”ํ•ด์ฃผ๊ธธ ๊ถŒํ•œ๋‹ค.

git bundle์„ ํ†ตํ•ด ์ง€๊ธˆ๊นŒ์ง€ ์ž‘์—…ํ•œ ๋ธŒ๋žœ์น˜(ํŽธ์˜์ƒ ์ด๋ ‡๊ฒŒ ๋ถ€๋ฅด์ž)๋ฅผ ํ•œ ํŒŒ์ผ๋กœ ํ•ฉ์ณ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋‹ค.

gitignore ์†Œ์Šค๋Š” ์—ฌ๊ธฐ ์žˆ๋Š” ๊ฑฐ ๋ฐฐ๊ปด์“ฐ๋ฉด ํŽธํ•˜๋‹ค

์›๋ผ์ด๋„ˆ

๋ฆฌ๋ฒ ์ด์Šคํ•˜๋ฉด์„œ ๋ชจ๋“  ์ปค๋ฐ‹์— Prettier ์ ์šฉ: git rebase -x 'git diff --name-only HEAD^ HEAD | grep -P "\.(?:[tj]sx?|json)$" | xargs yarn prettier --write && git commit --amend --no-edit -a' -X theirs development

Prettier์—์„œ ๋ฐ”๋€ ํŒŒ์ผ๋งŒ ์ฒดํฌ: git diff --name-only | grep -P "\.(?:[tj]sx?|json)$" | xargs yarn prettier -c

Referenced in

MSYS2

์œ„์˜ MS8NC9-71๋ฅผ ํ–ˆ๋‹ค๋ฉด ์ด๋ฏธ ์ ์šฉ๋˜์ง€๋งŒ, Scoop ๋“ฑ์œผ๋กœ Git์„ ๋ณ„๋„๋กœ ์„ค์น˜ํ•˜๊ณ ์ž ํ•˜๋Š” ๊ฒฝ์šฐ ํ•„์š”ํ•จ

January 11th, 2022

Git ์›๋ผ์ด๋„ˆ ๋งŒ๋“ค๊ณ  ๋†€์•˜๋‹ค.

GitHub

Git ํ˜ธ์ŠคํŒ… ์›น์‚ฌ์ดํŠธ ์ค‘ ์ œ์ผ ํฐ ๊ณณ.