블로그 이미지
신세계 SSG.COM / IT개발 1팀 / 상품개발담당 / 김지영 FreeEnd

카테고리

전체 (81)
끄적끄적 (13)
News (1)
Movie (11)
Security (1)
Design Patterns (2)
Operating System (4)
Database (8)
Framework (4)
Solution (7)
Language (1)
Web (4)
Lib (3)
TEST_Tools (4)
ETC... (7)
Software Factory (0)
Total187,706
Today5
Yesterday88


달력

« » 2017.05
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      

공지사항

글 보관함

'Solution/SVN'에 해당되는 글 4건

  1. 2010.10.19 Eclipse Helios 에 SVN설치하기!! (6)
  2. 2010.09.14 SVN (Subversion) 설치하기.
  3. 2010.09.13 SVN 이란?
  4. 2009.01.30 svn: Working copy 'Directory PATH' locked (1)


 Subclipse는 SVN 을 Eclipse 상에서 사용할 수 있게 도와주는 Eclipse plug-in 이다. SVN의 장점에다 이클립스의 프로젝트 소스 관리 기능까지 더해 개발자에게 소스 공유와 비교등의 작업을 편하게 도와주는 개발자의 필수 도구이다.

 Eclipse 에 SVN 설치는 어렵지 않다. 별다른 말 없이 밑에 그림대로 차근차근 따라해 보자.

 먼저 Subclipse 공식 프로젝트 사이트를 방문한다.

 
Subclipse 프로젝트 사이트
http://subclipse.tigris.org/ 

 이 프로젝트 사이트는 Totorise와 같이 이슈트래킹, 업데이트등의 다양한 정보를 제공한다. 궁금증이나 사용법등의 자료를 얻을 수 있다.

 위사이트에 들어가면 좌측 메뉴에 Download and Install 이라는 메뉴가 보인다. 해당 메뉴를 클릭하면 Subclipse를 설치하기 위한 다양한 정보를 볼수 있다.

 먼저 현재 Eclipse의 가장 최신 버젼은 Helios로 해당 버젼에서 설치할수 있는 Subclipse의 최신 버젼대인 1.6.x의 링크를 복사해온다. 이 링크는 친절하게 화면 가운데부분에 Currunt Release 목록의 아랫부분에 존재한다.


Download and Install 페이지

Links for 1.6.x Release:
Changelog: http://subclipse.tigris.org/subclipse_1.6.x/changes.html
Eclipse update site URL: http://subclipse.tigris.org/update_1.6.x
Zipped downloads: http://subclipse.tigris.org/servlets/ProjectDocumentList?folderID=2240 


 상기 url중에 가운데 있는 url을 이용해 Eclipse에 설치해보자.

 우선 아래와 같이 Eclipse의 상단 메뉴중 Help > Install New Software를 선택한다.
  


 Install New Software 를 클릭. 않하면 설치 못함. >_<


 그럼 아래와 같은 화면을 볼수 있따.



Install  창


 어렵지 않다. Install 창에서 Add를 눌러 Name에 적당한 이름을 써넣고 아까 url을 Location에 입력한다.
 개인적으로 Name에는 Subclipse, url에는 http://subclipse.tigris.org/update_1.6.x 를 입력하였다.

 
여따찍써

 필드를 채운뒤 OK를 누르면 아래 화면이 뜬다.

 


 쿨하게 다 선택하고 다음 누르자






남자답게 동의하자. 뭘 동의하는가. 자신있으면 약관 읽어보던가. 난 자신없어 않읽었음.

 
인스톨중... ^____________^

 

설치가 완료되면 Eclipse를 재시작 할꺼냐고 친절하게 팝업으로 물어본다. 그럼 재시작하면 설치끝. 지영옹.

신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 지영옹 FreeEnd
 SVN은 크게 Server, client 이렇게 두가지로 나뉜다.

 뭐 당연할것이 각 사용자가 파일을 업로드, 다운로드 등의 작업을 하는 클라이언트가 있어야 할것이고 또 이것을 취합해 자체적으로 파일을 관리, 저장 등 작업을 해야하니 서버가 있어야 할게 아닌가.

 일단 프로젝트 사이트를 먼저 방문해 보자.

 
 subversion 프로젝트 사이트
http://subversion.tigris.org/

일단 영어와 한글이 섞여있다. 어렵게 생각하지말고 대충 읽어보자. 뭐 대충 이런 내용이다.

 "이 사이트는 예전 subversion 프로젝트 사이트다. 지금은 subversion.apache.org 이쪽이 홈이다..
  아직까지 apache 로 이사간건 아니니 여기서도 계속 할텡께 뭐 이슈트래킹이나 그런거 여따써. 뭐 보장은 않해.
  소스나 패키지 다운로드 받으려면 소스코드 페이지나 패키지  페이지로와. 고맙다."

아. 나도 방금 알았다. 우리회사에서 형상관리 2년 해먹으면서... 사이트 이사간거 처음 알았다.

 다시 현재 Subversion 프로젝트 사이트로 이동해 보자.

현재 Subversion Project Site
http://subversion.apache.org/

자. 이곳이 바로 Subversion 에 대한 개발, 이슈트래킹, 토론 등 많은 정보를 공유할 수 있는 프로젝트 사이트이다. 이곳에서 다양한 정보를 얻을 수 있으니 필요한 정보가 있으면 이 블로그 말고 이 프로젝트 사이트를 이용하기 바란다.

  참고로 이곳에서 SVN메뉴얼도 얻을 수 있다. 프랑스어, 독일어 심지어 일본 중국어까지 번역서를 제공하지만, 불행히도 한국어는 없다. 조또, 이빠이, 쓰고이데스네, 와리바시등과 같은 말밖에 모르는 우리는 일본 번역서를 읽진 못할거 같고. 아쉬운대로 영어로 된 메뉴얼을 추천한다... http://svnbook.red-bean.com/ 이곳에 가면 메뉴얼을 얻을 수 있으니 참고하기 바란다.

 우리가 원하는 것은 바로 Subversion 설치이다. 일반적으로 Subversion을 서비스 하려는 목적이 아닌 프로젝트 사이트에서 소스를 공유하기 위해 SVN을 사용하려는 목적이 우선이기 때문에 먼저 Client를 설치해보자.


  Windows계열에서 설치하기.

 윈도우계열에서는 tortoisSVN설치를 추천한다. tortoisSVN 홈페이지에서도 간단히 이 프로젝트를 "Windows Shell Extension for Subversion" 이라고 소개 하고 있다. 가장 많이 쓰는 SVN중 하나이다.

 프로젝트 사이트 : http://tortoisesvn.net/ or http://tortoisesvn.tigris.org/ 
 다운로드 : http://tortoisesvn.net/downloads

 이 tortoisSVN도 Subversion의 서드파티 프로젝트이기 때문에  일반적으로 SVN 프로젝트가 업데이트 되면 이곳도 그에 맞게 새로 업데이트, 빌드 되곤 한다. tortoisSVN 프로젝트 사이트 메인페이지 중간에 릴리즈 노트를 보면
 

 이렇게 소개 하고 있다. 잘 읽어보면 Subversion 1.6.12 과 연결되어 있다고 그런다. 당시 현재 SVN버젼은 1.6.12 이고 이에 따라 서브파티 프로젝트들도 신속히 업데이트를 하고 있다는 것을 알수 있다. 뭐 여튼. Subversion의 version을 고려해 다운로드 사이트에서 적당한 버젼을 다운 받기 바란다.

 


 개인적으로는 Windows 7 x86 32bit 운영체제를 사용하고 있으므로 TotoiseSVN-1.6.10.19898-win32-svn-1.6.12.msi 버젼을 다운로드 하였다. 다운로드를 하면 SrouceForge 에서 다운로드가 시작된다.


자. 이렇게 적당한 위치에 다운로드 받아 파일을 실행시키면 설치를 위한 마법사가 나온다. 설치는 어렵지 않다. 전부 다음을 눌러주시기 바란다.

 

 위에 그림은 설치 화면을 연속해서 붙여 넣은 것이다. 좌측 상단부터가 설치 순서이다. 설치는 어렵지 않다. 빨간섹 체크를 보고 그냥 따라 눌러주기만 하면 된다.

설치가 끝나면 끝에 재부팅 할것인지에 대한 알림이 나오는데 재부팅을 꼭 할 필요는 없다.


이렇게 설치가 끝나고 마우스 오른쪽 버튼을 눌러보면 TortoisSVN 메뉴가 추가된 것을 볼수 있다. 지영옹.
저작자 표시 비영리 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 지영옹 FreeEnd

SVN 이란?

Solution/SVN / 2010.09.13 22:46

 SVN 은 Subversion의 약자로 형상관리를 하기 위한 어플리케이션의 일종이다.
 간단히 말해 각 수정된 소스 파일에 일률적인 버젼과 로그를 남기고 각 파일의 빌드 이력을 남겨 하나의 프로젝트를 지원하기 위한 어플리케이션 이라고 이해하면 얼추 맞을 것이다.

 이 어플리케이션 자체 하나만 보고 생각하면 굉장히 간단한 어플리케이션이다. 개발자, 혹은 파일을 수정하는 누군가가 어떤 파일을 수정하고 해당 이력을 남기고 서버에 저장하면 다른 사용자는 해당 변경된 내역을 기록과함께 열람하고 자신이 가지고 있는 파일의 변경사항을 변경, 적용할수 있도록 도와주는 것이다. 말하니깐 뭐 간단하진 않쿠만.

 이러한 어플리케이션이 왜 필요하는가??????????????????????????
  왜묻는것인가. 당신은....-_-;

 개발자가 1~2명에 불과한 소형 프로젝트에서는 이러한 소스 변경 사항을 기록, 공유를 돕는 어플리케이션이 절대적으로 필요하진 않다. 뭐 두명이 개발하는데 옆에서... "나 이거 수정했어... 너도 수정해. 텍스트 파일로 줄께 비교해봐" 라던지.. 아니면 "내가 인서트 모듈만 개발할께 너는 셀렉만 해라" 뭐 이런 상황이면 구지 소스 공유, 이력 공유 따위는 절대 필요 없다. 더 귀찮겠지뭐.

 하지만 일반적은 개발 프로젝트는 그렇치 않다. 개발자만 수십명인 프로젝트에서 각 소스들은 전문적으로 모듈화 되어 있다고는 하지만 각 모듈, 혹은 프로젝트는 서로 연관성이 다분하고 의존적이며, 심지어는 상속관계 일 경우에. 일반적인 텍스트 파일 공유나 전화로는 한계가 다분히 느껴질 것이다.
  이에 따라 소스 파일 업데이트 이력이 점차 중요해지고, 그 이외의 다양한 기능이 요구된 것이다.

 SVN은 이러한 난감하고 답답한 상황을 어느정도 해소해 준다. 소스의 변경사항 이력관리가 가능하고, 타인의 변경 사항에 대해서 현재 작업중인 파일에 대한 비교, 조합(Merge) 가 가능하며, 변경사항에 대해서 다른 개발 방향으로 분기(Branch)가 가능하다.
 
 이러한 기능은 형상관리(SCM : Software Configration Management) 에 절대적으로 필요한 기능중 하나이다. 형상관리란... 아.. 자꾸 말하다 보니 깊히 들어간다. 간단히 말해 어떠한 프로그램에 대하여 큰 형태의 구조적인 모습(형상)을 이루어 나가는 하나의 프로세스라고 생각하면 된다. 더 간단히 말하자면... 어떤 로보트를 만든다면 부분별로 만들어 하나로 합치는 거라고 생각하자. 아. 밤늦게 자꾸 깊히 말하려니깐 졸리다. 나중에 형상관리에 대해서 다시 한번 깊히 생각해보자.
 여튼. 로봇을 만들라면 팔이나 다리나 구조적으로 어느정도 조합이 되어야 하나로 조립하고 큰 틀을 만들어 나가지 않겠는가. 이렇게 구조적인 모습을 만들어 나가는 프로세스를 형상관리라고 표한하고 이렇게 구조적인 모습을 만들어나가는 부분을 이력관리 할수 있게 도와주는 어플이 바로 SVN이라고 말하고 싶다. 아.. 내가 무슨 말 하고 있는지.. 참..

 여튼. 내가 이렇게 까지 말했으면 좀 이해 하자. SVN은 소스에 대한 이력관리, 버젼관리하는 프로그램이다. 이걸 지금껏 설명한 것이다.

 참고로 SVN은 오픈소스 프로젝트이고 이것을 이용해서 subclipse, TortoiseSVN, RapidSVN 등의 다양한 서프파트 프로젝트가 개발되어 있거나 개발 중이니 자신이 원하는 목적에 맞게 개발, 수정, 사용하면 되겠다. 지영옹.

 SVN 프로젝트 홈페이지 : http://subversion.tigris.org/

저작자 표시 비영리 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 지영옹 FreeEnd
TAG SVN

SVN에 커밋등의 수정중에 비정상적으로 종료가 되었을때 SVN에 Lock이 걸린 상태에서 멈추어 버렸을대 다음 사용자가 해당 파일에 대해 수정 권한을 잃는 경우이다.

당연한 경우지. 내가 수정중에 딴놈이 수정하면 안대니깐;;
근데 내가 비정상 종료를 했으니 Lock을 풀어주지 못하고 빠져나온셈이지.

그럴땐 아무생각 말고 걍

svn cleanup

하면 끝난다.

한번에 안되는 경우가 있다. 그땐 여러번 하고 여러번 해도 안되면 해당 폴더를 찾아가 cleanup을 각각 실행해 준다.

lock 걸린 폴더 확인방법은

.svn 폴더 밑에 lock이 생성되어 있으면 lock걸린줄 알면 된다.

신고
크리에이티브 커먼즈 라이선스
Creative Commons License
Posted by 지영옹 FreeEnd

티스토리 툴바