[Git] Submodule installation
์ค์ ์์ ๋ก ๋ฐ๋ก ์ดํดํด๋ด ๋๋ค.
3dgs github์๋ submodules๊น์ง ํ๋ฒ์ ์ค์นํ ์ ์๋๋ก repository๋ฅผ cloneํ ๋, --recursive
์ธ์๋ฅผ ์ค๋๋ค.
--recursive
์ธ์๋ฅผ ์ฃผ๊ณgit clone
์ ์งํํ๋ฉด,.gitmodules
์ ์กด์ฌํ๋ ํ git repository์ ์กด์ฌํ๋ module๋ ํ๋ฒ์ clone์ด ๋์ด ์ค์น๊ฐ ๋ฉ๋๋ค.
.gitmodules
๋ฅผ ์ฐธ๊ณ ํด๋ณด๋ฉด submodule
๋ค์ 3๊ฐ์ง๊ฐ ์กด์ฌํฉ๋๋ค.
- .gitmodules ํ์ผ: ์๋ธ๋ชจ๋์ ๊ฒฝ๋ก์ URL ์ ๋ณด๋ง์ ํฌํจํ๊ณ ์์ต๋๋ค.
์ปค๋ฐ ํด์(Commit Hash): ํน์ ์ปค๋ฐ์ ์๋ณํ๋ ๊ณ ์ ํ ๋ฌธ์์ด. ์๋ธ๋ชจ๋์ด ํน์ ์ปค๋ฐ์ ๊ณ ์ ๋ ๋ ์ฌ์ฉ๋ฉ๋๋ค.
@
๊ธฐํธ ๋ค์ ์ค๋ ๋ฌธ์์ด์ด ์ปค๋ฐ ํด์(Commit Hash)์ ๋๋ค.@
๊ธฐํธ ๋ค์ ์ค๋ ๋ฌธ์์ด์ ์๋ธ๋ชจ๋์ด ๊ณ ์ ๋ ํน์ ์ปค๋ฐ ํด์๋ฅผ ์๋ฏธํฉ๋๋ค.- ์๋ธ๋ชจ๋์ ํน์ ์ปค๋ฐ ํด์๋ ๋ฉ์ธ ๋ ํฌ์งํ ๋ฆฌ์ .git ๋๋ ํ ๋ฆฌ ๋ด์ ์ ์ฅ๋ฉ๋๋ค.
- ๋ฉ์ธ ๋ ํฌ์งํ ๋ฆฌ์ ์ธ๋ฑ์ค ํ์ผ: ์๋ธ๋ชจ๋์ด ๊ณ ์ ๋ ์ปค๋ฐ ํด์ ์ ๋ณด๋ฅผ ํฌํจํ๊ณ ์์ต๋๋ค. ์ด๋ ๋ฉ์ธ ๋ ํฌ์งํ ๋ฆฌ์ .git/modules ๋๋ ํ ๋ฆฌ์ .git/config ํ์ผ์์ ๊ด๋ฆฌ๋ฉ๋๋ค.
- ์๋ธ๋ชจ๋์ด ํน์ ์ปค๋ฐ ํด์๋ก ๊ณ ์ ๋ ์ํ๋ฅผ ํ์ธํ๊ธฐ ์ํด ๋ฉ์ธ ๋ ํฌ์งํ ๋ฆฌ์ .git/modules ๋๋ ํ ๋ฆฌ๋ฅผ ์ดํด๋ณด๊ฑฐ๋, git submodule status ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
git submodule status
- ์ฌ๊ธฐ์ ๊ฐ ํด์ ๊ฐ์ ์๋ธ๋ชจ๋์ด ํ์ฌ ๊ณ ์ ๋ ์ปค๋ฐ์ ๋ํ๋ ๋๋ค.
git submodule status
๋ก ํ์ธํ ์ค์น๋ ์๋ธ๋ชจ๋์ ์ปค๋ฐ ํด์๊ฐ 3dgs ๋ฉ์ธ ๋ ํฌ์งํ ๋ฆฌ์@์ ๋ค์ ๋ฌธ์์ด
์ธ ์ปค๋ฐ ํด์์ ๊ฐ์์ ์ ์ ์์ต๋๋ค.
--recursive
๋ก ์ค์นํ๋ฉด ๋ฉ์ธ ๋ ํฌ์งํ ๋ฆฌ์์ ๊ฐ submodule์ ์ปค๋ฐํด์์ ๋ง๊ฒ ์ค์น๋๋, ๋ง์ฝ submodule์ ์ปค๋ฐํด์๊ฐ submodules์ git repository์ ์กด์ฌํ์ง ์์ ๊ฒฝ์ฐ ์ค์น๊ฐ ๋์ง ์์์ต๋๋ค.
- ์ด๋๋, ๋ฏธ๋ฆฌ ๋ก์ปฌ ์ปดํจํฐ์ ์ค์นํด๋์๋ submodules ํด๋๋ฅผ ์ค์นํ๋ ค๋ ํด๋น ์๋ฒ ํด๋์ ๋ณต์ฌ ๋ถ์ฌ๋ฃ๊ธฐ ํ๊ณ ,
pip install -e .
์ธ ๊ฐ๋ฐ๋ชจ๋๋ก ์ค์นํ์์ต๋๋ค. submodules/diff-gaussian-rasterization
,submodules/simple-knn
์pip install -e .
๋ก ์ค์นํ๊ณ ,git submodule status
๋ก ํ์ธํ ๊ฒฐ๊ณผ submodule์ ์ปค๋ฐํด์๊ฐ ๋ฉ์ธ ๋ ํฌ์งํ ๋ฆฌ์ ์ปค๋ฐํด์ @์ ๋ค์ ๋ฌธ์์ด๊ณผ ๊ฐ์ ๋ฌธ์ ๊ฐ ์์์ ํ์ธํ์์ต๋๋ค.
(heads/main)
= main
๋ธ๋์น์ ์ต์ ์ปค๋ฐ
(heads/main)
์ ์๋ธ๋ชจ๋์ด ํ์ฌ ๊ฐ๋ฆฌํค๊ณ ์๋ ์ปค๋ฐ์ด main ๋ธ๋์น์ ์ต์ ์ปค๋ฐ์์ ์๋ฏธํฉ๋๋ค. ์ด ์ ๋ณด๊ฐ ์ถ๋ ฅ๋๋ ๊ฒฝ์ฐ, ํด๋น ์๋ธ๋ชจ๋์ด main ๋ธ๋์น๋ฅผ ํธ๋ํนํ๊ณ ์์์ ๋ํ๋ ๋๋ค.
(heads/main)
์ด ์์ = ํน์ ์ปค๋ฐ ๊ณ ์
(heads/main)
์ ๊ฐ์ ๋ธ๋์น ์ ๋ณด๊ฐ ์๋ ๊ฒฝ์ฐ, ์๋ธ๋ชจ๋์ด ํน์ ๋ธ๋์น๋ฅผ ํธ๋ํนํ๊ณ ์์ง ์๊ฑฐ๋, ๋จ์ํ ํน์ ์ปค๋ฐ์ ๊ณ ์ ๋์ด ์์์ ์๋ฏธํฉ๋๋ค.- ์๋ฅผ ๋ค์ด:
SIBR_viewers
: ํน์ ๋ธ๋์น ์ ๋ณด ์์ด ํน์ ์ปค๋ฐ ํด์4ae964a267cd7a844d9766563cf9d0b500131a22
์ ๊ณ ์ ๋์ด ์์ต๋๋ค.ubmodules/simple-knn
: ํน์ ๋ธ๋์น ์ ๋ณด ์์ด ํน์ ์ปค๋ฐ ํด์44f764299fa305faf6ec5ebd99939e0508331503
์ ๊ณ ์ ๋์ด ์์ต๋๋ค.
์์ฝ
- ์๋ธ๋ชจ๋์ ํน์ ์ปค๋ฐ ํด์ ์ ๋ณด๋ ๋ฉ์ธ ๋ ํฌ์งํ ๋ฆฌ์ .git ๋๋ ํ ๋ฆฌ ๋ด์์ ๊ด๋ฆฌ๋ฉ๋๋ค.
- ์ด๋ฅผ ํ์ธํ๊ธฐ ์ํด์๋ git submodule status ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ๊ฑฐ๋, ๋ฉ์ธ ๋ ํฌ์งํ ๋ฆฌ์ .git/modules ๋๋ ํ ๋ฆฌ๋ฅผ ์ดํด๋ณด์์ผ ํฉ๋๋ค.
Leave a comment