이제부터 svn을 사용해도 되겠죠?
이제 어디서든 소스코드를 받아서 읽고 편집하고 다시 올릴 수 있습니다.
svn 에 익숙하지 않은 분을 위해(바로 저처럼...), 방금까지 삽질한 내용을 적어 둡니다.
0. svn 설치하기
ubuntu 의 경우 root 권한으로 apt-get install subversion 이라고 하면 한 번에 설치가 됩니다.
1. 소스 repository 목록 보기
$ svn list svn+ssh://계정@211.239.151.239/home/svn/os
(만약 211.239.151.239 에 로그인해서 로컬 머신의 repository를 보시는 경우라면, $ svn list file:///home/svn/os 와 같이 하시면 됩니다)
/home/svn/os/bootloader/lilo-21.4.4-2 가 바로, 우리가 해석한 lilo 소스코드입니다.
(lilo-21.4.4-1 은 뭘까요? 전 기수 분들이 해석하신 코드같습니다)
/home/svn/os/linux/linux-2.6.20.4-lksas3-x86_64 는, 우리가 이제부터 해석할 Linux kernel 소스코드입니다.
2. 소스 코드 받아 오기
이제부터는 lilo를 예제로 사용하겠습니다.
다음과 같이 하면 현재 사용하는 머신에 로컬 카피를 만들게 됩니다.
$ svn co svn+ssh://계정@211.239.151.239/home/svn/os/bootloader/lilo-21.4.4-2
3. 받아둔 로컬 카피를 최신 상태로 update하기
위와 같이 받아둔 로컬 카피에, repository의 최신 update를 적용시키는 방법입니다.
이제부터 나오는 명령들은 다음과 같이 로컬 카피의 디렉토리에 들어가서 수행합니다.
$ cd lilo-21.4.4-2
$ svn update [파일명]
로컬 카피를 건드리기 전에 svn update를 한 번 해 주는 게 좋을 것 같습니다.
[파일명]을 안 쓰면 디렉토리 전체를 업데이트합니다.
4. 상태 보기 (자주 쓰이는 명령이라고 합니다!)
$ svn status [파일명]
5. 내가 수정한 사항을 repository에 반영하기
$ svn ci [파일명]
svn ci 를 하기 전에 svn update를 한 번 해 주는 게 좋을 것 같습니다.
6. 수정 로그 보기
$ svn log [파일명]
더 자세히 보려면
$ svn log -v
7. r8 (revision 8) 과 로컬 카피의 파일 비교
$ svn diff -r8 [파일명]
(-r 을 생략하면 repository의 최신 revision과 로컬 카피를 비교합니다)
8. 로컬 카피의 파일을 다시 repository와 같게 되돌리기
$ svn revert [파일명]
결국 이것은 로컬 카피에 가한 수정을 취소하는 것입니다.
9. 각 라인을 수정한 사람이 누구인지 보기
$ svn blame [파일명]
10. repository에 없는 새 파일을 만들었으면
$ svn add 파일명
$ svn ci 파일명
(svn ci 까지 꼭 해줘야 합니다)
기타 svn delete|copy|move|mkdir 등이 있습니다.
다음 웹페이지들을 참고하세요.
http://lambert.egloos.com/2974388/
http://www.pyrasis.com/main/Subversion-HOWTO
http://wiki.kldp.org/wiki.php/SubversionBook/GuidedTour#svn-ch-3-sect-4
http://www.ibm.com/developerworks/kr/library/l-vercon/index.html
이제 어디서든 소스코드를 받아서 읽고 편집하고 다시 올릴 수 있습니다.
svn 에 익숙하지 않은 분을 위해(바로 저처럼...), 방금까지 삽질한 내용을 적어 둡니다.
0. svn 설치하기
ubuntu 의 경우 root 권한으로 apt-get install subversion 이라고 하면 한 번에 설치가 됩니다.
1. 소스 repository 목록 보기
$ svn list svn+ssh://계정@211.239.151.239/home/svn/os
(만약 211.239.151.239 에 로그인해서 로컬 머신의 repository를 보시는 경우라면, $ svn list file:///home/svn/os 와 같이 하시면 됩니다)
/home/svn/os/bootloader/lilo-21.4.4-2 가 바로, 우리가 해석한 lilo 소스코드입니다.
(lilo-21.4.4-1 은 뭘까요? 전 기수 분들이 해석하신 코드같습니다)
/home/svn/os/linux/linux-2.6.20.4-lksas3-x86_64 는, 우리가 이제부터 해석할 Linux kernel 소스코드입니다.
2. 소스 코드 받아 오기
이제부터는 lilo를 예제로 사용하겠습니다.
다음과 같이 하면 현재 사용하는 머신에 로컬 카피를 만들게 됩니다.
$ svn co svn+ssh://계정@211.239.151.239/home/svn/os/bootloader/lilo-21.4.4-2
3. 받아둔 로컬 카피를 최신 상태로 update하기
위와 같이 받아둔 로컬 카피에, repository의 최신 update를 적용시키는 방법입니다.
이제부터 나오는 명령들은 다음과 같이 로컬 카피의 디렉토리에 들어가서 수행합니다.
$ cd lilo-21.4.4-2
$ svn update [파일명]
로컬 카피를 건드리기 전에 svn update를 한 번 해 주는 게 좋을 것 같습니다.
[파일명]을 안 쓰면 디렉토리 전체를 업데이트합니다.
4. 상태 보기 (자주 쓰이는 명령이라고 합니다!)
$ svn status [파일명]
5. 내가 수정한 사항을 repository에 반영하기
$ svn ci [파일명]
svn ci 를 하기 전에 svn update를 한 번 해 주는 게 좋을 것 같습니다.
6. 수정 로그 보기
$ svn log [파일명]
더 자세히 보려면
$ svn log -v
7. r8 (revision 8) 과 로컬 카피의 파일 비교
$ svn diff -r8 [파일명]
(-r 을 생략하면 repository의 최신 revision과 로컬 카피를 비교합니다)
8. 로컬 카피의 파일을 다시 repository와 같게 되돌리기
$ svn revert [파일명]
결국 이것은 로컬 카피에 가한 수정을 취소하는 것입니다.
9. 각 라인을 수정한 사람이 누구인지 보기
$ svn blame [파일명]
10. repository에 없는 새 파일을 만들었으면
$ svn add 파일명
$ svn ci 파일명
(svn ci 까지 꼭 해줘야 합니다)
기타 svn delete|copy|move|mkdir 등이 있습니다.
다음 웹페이지들을 참고하세요.
http://lambert.egloos.com/2974388/
http://www.pyrasis.com/main/Subversion-HOWTO
http://wiki.kldp.org/wiki.php/SubversionBook/GuidedTour#svn-ch-3-sect-4
http://www.ibm.com/developerworks/kr/library/l-vercon/index.html
댓글 2
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
공지 | [공지] 커널 스터디 관련 Q&A 게시판 입니다. [5] | woos | 2016.04.09 | 2202 |
85 | 4월 스터디 참여 불투명 | 김재호 | 2007.04.07 | 4550 |
84 | 저도 내일 불참할거 같습니다 | 변유준 | 2007.04.07 | 4895 |
83 | 내일 불참할 것 같습니다. | 정찬성 | 2007.04.07 | 4632 |
82 | EM64T 아키텍쳐 메뉴얼에 대해... [2] | 선준규 | 2007.04.06 | 3122 |
81 | [질문] 커널 컴파일용 Makefile 에 대해.. [4] | 송형주 | 2007.04.05 | 3345 |
80 | PowerPC 세미나 참관에 대한 의견 수렴 [11] | 지현구 | 2007.04.04 | 2937 |
79 | 저번 시간에 참고되었어던 어셈블리 지시자들 참고 자료 | 강형석 | 2007.04.02 | 4502 |
78 | [re] 더 조사해 볼 사항들 [5] | 송형주 | 2007.04.02 | 4482 |
77 | Linux i386 Boot Code HOWTO | 지현구 | 2007.04.01 | 3104 |
76 | 더 조사해 볼 사항들 | 지현구 | 2007.04.01 | 2792 |
75 | 3월 31일 스터디 [5] | 김강년 | 2007.04.01 | 4794 |
74 | 한글 gnu 링크 메뉴얼 | 유상민 | 2007.04.01 | 2955 |
73 | 오늘 못 갈것 같습니다. | 이경호 | 2007.03.31 | 4661 |
72 | 윽..오늘 스터디 불참할 것 같습니다. | 서두원 | 2007.03.31 | 4375 |
» | svn에 lilo 및 linux kernel의 소스 코드를 올렸습니다 [2] | 지현구 | 2007.03.31 | 4903 |
70 | 이번주 스터디에 조금 늦을 것 같습니다. [1] | 선준규 | 2007.03.29 | 2874 |
69 | [때늦은 술자리 인사~~ ]모두 잘 들어가셨겠지요? [3] | 강형석 | 2007.03.27 | 3174 |
68 | second.S 분석 정리입니다. [2] | 송형주 | 2007.03.26 | 4417 |
67 | 3월 24일자 lilo분석 파일입니다. | 선준규 | 2007.03.26 | 2506 |
66 | 3월 24일 스터디 [3] | 김강년 | 2007.03.25 | 4653 |
.