svn merge ์์ --dry-run ์ด๋ผ๋ ์ต์
์ด ์๋ค.
์ ์ฅ์๋ผ๋ฆฌ merge ์์๋ ์๋นํ ๋ง์ ์์ ํ์ผ๋ค์ด ๋จธ์ง๋๊ธฐ ๋๋ฌธ์,
ํ์ฌ๋ ์๋ชป๋ ๊น๋ด ๊ฐ์ด์ด ๋๊ทผ๋๊ทผ๊ฑฐ๋ฆฌ๋๋ฐ ์ด๋ฅผ --dry-run ์ต์
์ผ๋ก๋ค๊ฐ ๋ฏธ๋ฆฌ ์ด๋ค ๊ฒฐ๊ณผ๊ฐ ์ํ๋๋์ง๋ฅผ ํ์ธ์ด ๊ฐ๋ฅํ๋ค.
A docroot/img/common/set_tab_friend2.gif
D docroot/img/common/bg_star_tooltip.gif
A docroot/img/common/bg_star_tooltip.gif
U docroot/img/common/set_side_title.gif
U docroot/img/common/set_tab_home.gif
D docroot/img/common/set_tab_setting3.gif
A docroot/img/common/set_tab_setting3.gif
U docroot/img/toolbar/set_toolbar.gif
D docroot/img/toolbar/btn_reply_cancel.gif
A docroot/img/toolbar/btn_reply_cancel.gif
D docroot/img/toolbar/btn_reply_ok.gif
A docroot/img/toolbar/btn_reply_ok.gif
U docroot/img/toolbar/bg_toolbar.gif
D docroot/img/layer/set_tab_widget.gif
A docroot/img/layer/set_tab_widget.gif
SVN ์ฉ์ด์ ๋ฆฌ
[ Subversion ์ ๋ฆฌ ]
1. Subversion ์ ์ฌ์ฉํ๋ 3๊ฐ์ง ๋ฐฉ์
1) ํ์๊ธฐ ๋ฐฉ์
Subversion์ ์๋์ฐ์ฆ ํ์๊ธฐ์ฒ๋ผ ์ฌ์ฉํ๋๋ก ํด์ฃผ๋ TortoiseSVN์ด ์๋ค. ์๋ ๋งํฌ๋ฅผ ํตํด TortoiseSVN์ ์ค์นํ์ฌ ์ฌ์ฉํ๋ค.
http://tortoisesvn.tigris.org
2) ์น ๋ฐฉ์
Apache ์๋ฒ๋ฅผ ๊ตฌ์ถํ๊ณ Subversion๊ณผ ViewVC๋ฅผ ์ค์นํ๋ฉด ์ต์คํ๋ก๋ฌ๋ฅผ ํตํด ์น์ฒ๋ผ ์ ๊ทผํ ์ ์๋ค.
http://httpd.apache.org : Apache (apache_2.0.59-win32-x86.msi)
http://subversion.tigris.org : Subversion (svn-1.4.3-setup.exe)
http://www.viewvc.org : ViewVC (viewvc-1.0.3.zip)
ViewVC๋ฅผ ์ฌ์ฉํ์ง ์์ ๊ฒฝ์ฐ์๋ "์ง์ ๋๋ฉ์ธ"/"ํด๋น ์ ์ฅ์" ๋ก ์ ๊ทผ
์) sample.com/repository
ViewVC๋ฅผ ์ฌ์ฉํ ๊ฒฝ์ฐ์๋ "์ง์ ๋๋ฉ์ธ"/viewvc ๋ก ์ ๊ทผ
์) sample.com/viewvc
3) svn+ssh ๋ฐฉ์
sshํด๋ผ์ด์ธํธ ํด์ธ putty๋ฅผ ์ด์ฉํ์ฌ ssh๋ก ์ํธํ ๋ ์ํ๋ก Subversion์ ์ฌ์ฉํ๋ค.
๊ฐ์ธ๋ง๋ค ํค๋ฅผ ์์ฑํ์ฌ ์ด์ฉํ๋๋ฐ........
2. Subversion ์ฃผ์ ๋ช
๋ น์ด
1) svnadmin create : ์ง์ ํ ์์น์ ์๋ก์ด ์ ์ฅ์(repository)๋ฅผ ์์ฑํ๋ค.
ํ์ - svnadmin create "dest"
# svnadmin create /home/heyduk/repos
2) svn import : ์์ฑ๋ ์ ์ฅ์์ ํ๋ก์ ํธ ํ์ผ์ ๋ฃ๋๋ค.
ํ์ - svn import "option" "source" "dest"
# svn import -m "import first project" . file:///home/heyduk/repos/project1/trunk
-m ์ต์
์ ํตํด import ํ ๋์ ๋ฉ์ธ์ง๋ฅผ ๋จ๊ธฐ๊ณ ํ์ฌ ๋๋ ํ ๋ฆฌ์ ๋ด์ฉ์ project1๋ผ๋ ๋ณ๋์ ๋๋ ํ ๋ฆฌ์ ๋ฃ๋๋ค.
3) svn checkout(co) : ์ ์ฅ์์ ๋ณด๊ด๋ ํ๋ก์ ํธ ์์ค๋ฅผ ๋ก์ปฌ ์์คํ
์ ์์
๋๋ ํ ๋ฆฌ๋ก ๋ณต์ฌํ์ฌ ๊ฐ์ ธ์จ๋ค.
ํ์ - svn co "source" "dest"
# svn co file:///home/heyduk/repos/project1/trunk my_work
4) svn commit : ์ง์ญ ์์
๋ณธ์ ๋ณ๊ฒฝํ ๋ด์ฉ๋ค์ ์ ์ฅ์์ ์ ์ฅํ๋ฉฐ ํ๋ก์ ํธ๋ฅผ ์๋ก ๋ฆฌ๋น์ ผ์ํจ๋ค.
ํ์ - svn commit(ci) "option"
# svn commit -m "main() modified"
5) svn status : ์์
๋ณต์ฌ๋ณธ์์ ๋ณ๊ฒฝ๋ ์ดํ ์์ง ์ ์ฅ์๋ก commit ๋์ง ์์ ๋ด์ฉ์ ํ์ธํ๋ค.
ํ์ - svn st "path"
# svn status(st) main.c
์ถ๋ ฅ ๋ด์ฉ ์ค ์ฒซ๋ฒ์งธ ๋ฌธ์๋ฅผ ํตํด ์ํ๋ฅผ ํ์ธํ ์ ์๋๋ฐ ๊ทธ์ค ๋ช๊ฐ์ง ์ฃผ์ ๋ด์ฉ์ ๋ค์๊ณผ ๊ฐ๋ค.
A : ์ถ๊ฐ๋จ
C : ์ถฉ๋๋จ
D : ์ญ์ ๋จ
M : ์์ ๋จ
G : ๋ณํฉ๋จ
6) svn diff : ์ ์ฅ์์ ๋ด์ฉ๊ณผ ํ์ฌ ์์
๋ด์ฉ์ ๋น๊ตํ์ฌ ๋ณ๊ฒฝํ ๋ถ๋ถ(์ฐจ์ด์ )์ ์์ธํ ํ์ธํ๋ค.
์ ์ฅ์์์ ๋คํธ์ํน์ ์ผ์ด๋์ง ์์ผ๋ฏ๋ก ์ค์๊ฐ ๋ณ๊ฒฝ ๋ด์ฉ์ ๋ฐ์๋์ง ์๋๋ค.
ํ์ - svn diff "path" , svn diff "option"
# svn diff main.c
์ ์ฅ์์ ๋ด์ฉ๊ณผ ํ์ฌ ์์
๋ด์ฉ ์ค main.c ํ์ผ์ ์ฐจ์ด๋ฅผ ํ์ธ
# svn diff -r 1:2
๋ฆฌ๋น์ 1๊ณผ 2์ ์ฐจ์ด๋ฅผ ํ์ธ
# svn diff -r 1 main.c
๋ฆฌ๋น์ 1๊ณผ ํ์ฌ ์์
์ค์ธ main.c์ ์ฐจ์ด๋ฅผ ํ์ธ
# svn diff -r 2
๋ฆฌ๋น์ 2์ ํ์ฌ ์์
์ค์ธ ๋๋ ํ ๋ฆฌ์ ํ์ผ๋ด์ฉ ์ฐจ์ด๋ฅผ ํ์ธ
7) svn log : ํน์ ํ์ผ์ commit๋ ๋ก๊ทธ ๋ฉ์ธ์ง๋ฅผ ํ์ธํ๋ค.
ํ์ - svn log "path" , svn log "option"
# svn log main.c
main.c ํ์ผ์ด commit ๋ ๋ก๊ทธ๋ฉ์ธ์ง๋ฅผ ์ถ๋ ฅ
# svn log -r 1:2
๋ฆฌ๋น์ ผ1๋ถํฐ 2๊น์ง์ ๋ก๊ทธ๋ฉ์ธ์ง๋ฅผ ์ถ๋ ฅ
8) svn update : ํ์ฌ ์์
๋๋ ํ ๋ฆฌ์ ๋ด์ฉ์ ์ ์ฅ์์ ์ต์ ๋ฆฌ๋น์ ์ผ๋ก, ๋๋ ์ง์ ํ ๋ฆฌ๋น์ ์ผ๋ก ๊ฐฑ์ ํ๋ค.
ํ์ - svn update(up) "option"
# svn up
ํ์ฌ ์์
๋ด์ฉ์ ์ต์ ๋ด์ฉ์ผ๋ก ๊ฐฑ์
# svn up -r 1
ํ์ฌ ์์
๋ด์ฉ์ ๋ฆฌ๋น์ 1๋ก ๊ฐฑ์ (์ต์ ๋ฆฌ๋น์ ๋ณด๋ค ์ด์ ์ผ๋ก ๋๋๋ฆฌ๋ ๊ฒ๋ ๊ฐ๋ฅํ๋ค.)
9) svn add : ํ๋ก์ ํธ์ ํ์ผ์ด๋ ๋๋ ํ ๋ฆฌ๋ฅผ ์ถ๊ฐํ๋ค.
ํ์ - svn add "path"
# svn add Makefile
add๋ก ์ถ๊ฐํ ๊ฒฝ์ฐ ์ ์ฅ์์๋ ๋ฐ๋ก ๋ฐ์๋์ง ์๊ธฐ ๋๋ฌธ์ commit ์ ์ํํ์ฌ ์๋ก์ด ๋ฆฌ๋น์ ์ผ๋ก ๊ฐฑ์ ํ ํ์๊ฐ ์๋ค.
10) svn revert : ์ง์ญ ์์
๋ณต์ฌ๋ณธ์์ ์ํํ ๋ณ๊ฒฝ๋ค์ ์ด์ ์ํ๋ก ๋ณต์(์คํ ์ทจ์)ํ๋ค.
ํ์ - svn revert "path"
# svn revert main.c
์ง์ญ ๋ณต์ฌ๋ณธ์ main.c ํ์ผ์ ๊ฐํ๋ ๋ณ๊ฒฝ๋ค์ ๋ชจ๋ ๋ณต์(์ทจ์)ํจ
11) svn merge : ์ ์ฅ์๋ผ๋ฆฌ, ๋๋ ์ ์ฅ์์ ์ง์ญ ์์
๋ณธ๊ฐ์ ๋ณ๊ฒฝ ๋ด์ญ์ ์์
๋ณธ์ ๋ณํฉํ๋ค.
ํ์ - svn merge "source1" "source2" "dest" : ๋ค๋ฅธ ์ ์ฅ์๋ผ๋ฆฌ์ ๋ณ๊ฒฝ ์ฌํญ์ ์ง์ ํ ์์
๋ณต์ฌ๋ณธ์ผ๋ก ๋ณํฉํจ
svn merge -r rev_num1:rev_num2 "dest" : ๊ธฐ๋ณธ ์ ์ฅ์์ ์๋ ๋ ๋ฆฌ๋น์ ์ ๋ณ๊ฒฝ์ฌํญ์ ์ง์ ํ ์์
๋ณต์ฌ๋ณธ์ผ๋ก ๋ณํฉํจ
# svn merge file:///home/heyduk/repos/project1/trunk file:///home/heyduk/repos/project2/trunk my_work
์ ์ฅ์์ project1๊ณผ project2๊ฐ์ ์ฐจ์ด๋ฅผ ์ง์ญ ์์
๋ณธ์ธ my_work์ ๋ณํฉํจ
# svn merge -r 6:7 file;///home/heyduk/repos/trunk my_work
์ ์ฅ์์ ๋ฆฌ๋น์ 6~7์ ๋ณ๊ฒฝ๋ด์ฉ์ ์ง์ญ ์์
๋ณธ์ธ my_work ์ ๋ณํฉํจ