블로그 이미지
잡초 개발자의 좌충우돌 이야기 yysvip

카테고리

분류 전체보기 (211)
Java Programing (24)
Web Programing (20)
Database (36)
Tool (46)
까칠한 IT (27)
까칠한 정보 (42)
까칠한 Strory (16)
까칠한 Project (0)
Total1,208,352
Today78
Yesterday38

달력

« » 2019.12
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        

공지사항

SVN - Ignored Resources

  까칠한 남자 Strory       yysvip.tistory.com       잡초 개발자 까찰한 쑤의 좌충우돌 개발 이야기

 

Subversion을 이용해 형상관리를 하는 경우

 매번 문제가 발생하는 부분이 버전 관리가 안되야 할 파일들이 버전 관리 되면서 충돌이 발생하는 경우다.


 대표적인 파일들은 .classpath와 같은 개인별로 다를 수 밖에 없는 설정 파일이나 이미지 폴더내의 Thumb.db 파일등이다.

 

우선 기본적으로는 프로젝트 초기에 이런 버전관리 하지 않는 파일들을 svn:ignore에 등록을 해두는게 중요하다.  그러나 현실적으로 초기에 이런 부분을 지나치고 개발을 진행하다 문제가 발생하게 되는데 이때는 깔끔하게 해결 할 수 있는 방법을 찾기 힘들다는데 문제의 심각성이 있다.

 

이런 부분에 대해서 총괄적으로 정리를 해보자.

 

 

1. 이클립스 전체 설정


우선 이클립스에서 프로젝트에 상관없이 버전 관리를 하지 않아야할 파일들을 전체적으로 설정할 수 있다.


[Window] > [Preference] > [Team] > [Ignored Resources]에 버전관리에 포함되지 않는 파일 패턴을 정의해 두면 이런 파일들은 버전 관리에서 제외된다.


예를 들어 *.bak 이나 Thumb.db 파일처럼 전체적으로 버전 관리에서 제외 되어야 할 파일이나 패턴을 정의해두게 된다.

 

 

 

 

2. 프로젝트별 개별 설정


프로젝트별로 ignore파일을 설정 할 때는 svn:ignore 속성을 이용하게 된다.


 아직 버전 관리가 되지 않은 파일의 경우에는 [Team] > [Add to svn:ignore] 를 선택하면 해당 파일이나 폴더는 버전 관리에서 제외 된다.

 

 

 

 

3. 이미 버젼관리 되고 있는 파일에 대한 ignore 처리

 

이게 상당히 까다로운 부분인데 이 부분을 이클립스에서 한번에 처리할 수 있는 기능은 찾지 못했다.

 

 이 경우 해결할 수 있는 방법은 SVN Repository에서 해당 파일을 삭제하고 로컬에서 업데이트를 받아 해당 파일이 삭제된 후 다시 파일을 추가해 그 파일을 [Team] > [Add tosvn:ignore] 를 통해 설정하는 방법이다.

 (이 방법외 다른 벙법이 있으면 알려 주시면 감사 하겠습니다.)

 

 

■ <작업 순서 예시>

 

1) 동기화 작업 진행 (다른 파일들과 함께 commit이나 update 하지 않도록 소스 정리)

 

 

그림설명) 

현재 버전 관리되고 있는 Sample.txt 파일을 버전관리에서 제외하는 작업을 진행해 보자. 

현 상태에서는 마우스 오르버튼에 [Team] > [Add to svn:ignore] 명령이 비활성화 되어 있어  

ignore 설정을 할수 없다.

 

 

2) ignore 할 파일을 SVN Repository 에서 삭제한다. 

 

 

그림설명) SVN Repository 뷰에서 프로젝트내의 해당 Sample.txt 파일을 삭제한다.

 

 

3). 로컬에서 해당 파일을 백업 받아두고 해당 폴더나 프로젝트에서 commit을 한다. 

 

 

그림설명) 업데이트를 받으면 해당 파일이 삭제된다

 

 

 

※ TortoiseSVN 사용시 이를 간편히 할 수 있다.

 

1) 탐색기를 열고 아무 위치에서나 [마우스 우클릭]-[TortoiseSVN]-[Settings] 를 선택한다.

 

 

 

2) Settings 대화상자에서 중간부분에 있는 [Global ignore pattern] 부분에 아래 내용을 추가한다.

   이것은 기본적으로 형상관리에서 제외할 파일의 패턴을 입력하는 부분으로 불필요한 파일이 commit 되어 변경사항

   파악 에 어려움을 없애기 위함이므로 반드시 설정하도록 한다.

 

 

Posted by yysvip

댓글을 달아 주세요

최근에 달린 댓글

최근에 받은 트랙백

글 보관함