gitmodules
.gitmodules
Git ํ๋ก์ ํธ์์ ๋ค๋ฅธ Git ์ ์ฅ์๋ฅผ ํฌํจํ๋ ์๋ธ๋ชจ๋ ๊ธฐ๋ฅ์, ์ธ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ๋ ๋ฆฝ ๋ชจ๋์ ๋ณ๋์ ์ด๋ ฅ์ผ๋ก ๊ด๋ฆฌํ๋ฉด์๋ ์์ ํ๋ก์ ํธ์ ์ฐ๋ํ ์ ์๋๋ก ๋์์ค๋๋ค. ์ด๋, .gitmodules ํ์ผ์ ์๋ธ๋ชจ๋์ ๊ฒฝ๋ก, ์๊ฒฉ ์ ์ฅ์ URL, ๊ทธ๋ฆฌ๊ณ (์ต์ ์ผ๋ก) ์ถ์ ํ ๋ธ๋์น ๋ฑ ์ ๋ณด๋ฅผ ์ค์ ํด ๋๋ ์ค์ํ ๋ฉํ๋ฐ์ดํฐ ํ์ผ์ ๋๋ค.
๊ธฐ๋ณธ ๊ตฌ์ฑ
์๋ธ๋ชจ๋์ ์ถ๊ฐํ๋ฉด Git์ ์๋์ผ๋ก .gitmodules ํ์ผ์ ์์ฑํฉ๋๋ค. ๊ธฐ๋ณธ์ ์ธ ๊ตฌ์ฑ์ ์๋์ ๊ฐ์ต๋๋ค.
์น์ ์ด๋ฆ:
[submodule "libs/somelib"]
๋ ์๋ธ๋ชจ๋ ์ด๋ฆ์ด๋ ๊ฒฝ๋ก๋ฅผ ์๋ณํ๊ธฐ ์ํ ๋ผ๋ฒจ์ ๋๋ค. ์ฌ์ฉ์ ์์๋ก ์ ํ ์ ์์ง๋ง, ๋ณดํต ์๋ธ๋ชจ๋์ด ์์นํ๋ ๊ฒฝ๋ก๋ฅผ ๋ฐ์ํฉ๋๋ค.path: ์ค์ ์๋ธ๋ชจ๋์ด ์ฒดํฌ์์ ๋ ๋ก์ปฌ ๊ฒฝ๋ก๋ฅผ ์ง์ ํฉ๋๋ค.
url: ์๋ธ๋ชจ๋์ ์๊ฒฉ ์ ์ฅ์ ์ฃผ์๋ฅผ ๋ํ๋ด๋ฉฐ, ์ด URL์ ํตํด Git์ ํด๋น ์ ์ฅ์๋ฅผ ํด๋ก ํ๊ฑฐ๋ ์ ๋ฐ์ดํธํฉ๋๋ค.
๋ํ, ์ ํ ์ฌํญ์ผ๋ก ํน์ ๋ธ๋์น๋ฅผ ์ถ์ ํ๋๋ก ์ง์ ํ ์๋ ์์ต๋๋ค.
์ด๋ ๊ฒ ํ๋ฉด git submodule update --remote
๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ ๋, ์ง์ ํ ๋ธ๋์น์ ์ต์ ์ปค๋ฐ์ผ๋ก ์๋ธ๋ชจ๋์ด ์
๋ฐ์ดํธ๋ฉ๋๋ค.
์๋ธ๋ชจ๋ ๋ณ๊ฒฝ ์ฌํญ
์๋ธ๋ชจ๋ ๋ด๋ถ์์ ํ์ผ ์์ ํ ์ปค๋ฐ, ํธ์๋ฅผ ์งํํ๋ฉด ํด๋น ์๋ธ๋ชจ๋ ์ ์ฅ์๋ ์ต์ ์ํ๋ก ๊ฐฑ์ ๋ฉ๋๋ค. ๊ทธ๋ฌ๋ ์์(๋ฉ์ธ) ์ ์ฅ์๋ ์๋ธ๋ชจ๋์ ์ปค๋ฐ ํฌ์ธํฐ๋ง์ ๊ธฐ๋กํ๊ธฐ ๋๋ฌธ์, ๋ด๋ถ ๋ณ๊ฒฝ ์ฌํญ์ด ๋ฐ์๋ ์ ์ปค๋ฐ ํด์๋ก ์ ๋ฐ์ดํธ๋์ง ์์ต๋๋ค. ์ฆ, ์๋ธ๋ชจ๋ ๋ณ๊ฒฝ ํ ์์ ์ ์ฅ์์ ํด๋น ๋๋ ํ ๋ฆฌ๋ฅผ ๋ค์ add ๋ฐ ์ปค๋ฐํด์ผ, ๋ค๋ฅธ ํ์ ์๋ค๋ ์ต์ ์ํ์ ์๋ธ๋ชจ๋์ ๋ฐ์ ์ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, ์๋ธ๋ชจ๋ ๋ด์์ ์ ๋ฐ์ดํธ ํ ์์ ์ ์ฅ์์์ ๋ฐ์ํ๋ ์ ์ฐจ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
๋ํ, ์์ ์ ์ฅ์์์ git submodule update --remote
๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ๋ฉด .gitmodules์ ์ง์ ํ ๋ธ๋์น๋ฅผ ๊ธฐ์ค์ผ๋ก ์๋ธ๋ชจ๋์ ์ผ๊ด ์
๋ฐ์ดํธํ ์ ์์ต๋๋ค.
ํ
ํต์ผ๋ ์๋ธ๋ชจ๋ ์ ๋ณด ๊ณต์ : .gitmodules ํ์ผ์ ์์ ์ ์ฅ์์ ํฌํจ๋๋ฏ๋ก, ๋ชจ๋ ํ์์ด ๋์ผํ ์๋ธ๋ชจ๋ ๊ฒฝ๋ก์ URL์ ์ฌ์ฉํ๊ฒ ๋ฉ๋๋ค. ์ด๋ฅผ ํตํด ๊ฐ์ ๋ค๋ฅธ ๋ฒ์ ์ ์ฌ์ฉํ๊ฑฐ๋ ๊ฒฝ๋ก๋ฅผ ์๋ชป ์ง์ ํ๋ ๋ฌธ์ ๋ฅผ ์๋ฐฉํ ์ ์์ต๋๋ค.
์๋ธ๋ชจ๋ ๋ณ๊ฒฝ ์ ์ฃผ์: ์๋ธ๋ชจ๋์ ์ ๋ฐ์ดํธ๋ ๋จ์ํ ๋ด๋ถ ๋ณ๊ฒฝ ์ฌํญ ๋ฐ์๋ฟ๋ง ์๋๋ผ, ์์ ์ ์ฅ์์ ์ปค๋ฐ ํฌ์ธํฐ ๋ณ๊ฒฝ๊น์ง ํ์ํฉ๋๋ค. ๋ฐ๋ผ์, ์๋ธ๋ชจ๋ ์ ๋ฐ์ดํธ ํ ๋ฐ๋์ ์์ ์ ์ฅ์์ ๋ณ๊ฒฝ ์ฌํญ์ ์ปค๋ฐํ์ฌ ๋๊ธฐํ๋ฅผ ๋ง์ถฐ์ผ ํฉ๋๋ค.
์๋ธ๋ชจ๋ ์ญ์ /์ด๋: ์๋ธ๋ชจ๋์ ์ ๊ฑฐํ๊ฑฐ๋ ๋ค๋ฅธ ์์น๋ก ์ด๋ํ ๋๋ .gitmodules ํ์ผ๋ฟ ์๋๋ผ, Git ๋ด๋ถ ์บ์(
.git/config
๋ด ์๋ธ๋ชจ๋ ๊ด๋ จ ์ค์ )๊น์ง ์ ๋ฆฌํด์ผ ํ๋ฏ๋ก ์ฃผ์๊ฐ ํ์ํฉ๋๋ค.
.gitmodules ํ์ผ์ Git ์๋ธ๋ชจ๋ ๊ด๋ฆฌ์ ํต์ฌ ๊ตฌ์ฑ ์์๋ก, ์ธ๋ถ ์ ์ฅ์์ ์์ ํ๋ก์ ํธ๋ฅผ ์ฐ๊ฒฐํ๋ ์ญํ ์ ํฉ๋๋ค. ์ด ํ์ผ์ ์ฌ๋ฐ๋ฅธ ๊ฒฝ๋ก์ URL, ์ ํ์ ์ผ๋ก ์ถ์ ํ ๋ธ๋์น๋ฅผ ์ง์ ํด๋๋ฉด, ํ๋ก์ ํธ๋ฅผ ํด๋ก ํ๊ฑฐ๋ ์ ๋ฐ์ดํธํ ๋ ์๋ธ๋ชจ๋์ ์ํ๋ฅผ ์์ฝ๊ฒ ๋๊ธฐํํ ์ ์์ต๋๋ค. ์๋ธ๋ชจ๋ ๊ด๋ฆฌ์ ์ต์ํด์ง๋ฉด, ๋๊ท๋ชจ ํ๋ก์ ํธ์์ ๊ณต์ฉ ๋ชจ๋์ด๋ ์ธ๋ถ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋ฒ์ ๊ด๋ฆฌ๊ฐ ๋์ฑ ๋ช ํํด์ง๊ณ , ํ์ ๊ณผ์ ์์์ ํผ๋์ ์ค์ผ ์ ์์ต๋๋ค.
Last updated