요즘들어 상당 수의 플래시 오픈소스 개발로 인해 버전관리 프로그램을 많이들 사용하고 있다.
버전관리의 효율적인 측면에서는 인정하지만 최종소스을 공유할 시 각 폴더에 들어있는 .svn 폴더로 인해 상당히 괴로울(?) 때가 있을 것이다.
물론 대표적인 Subversion 윈도우용 쉘프로그램인 TortoiseSVN 에서는 최종소스를 익스포트할 수 있게 해주는 기능이 존재하지만 이 기능은 해당 SVN 시스템에 귀속된 채 관리되는 것이라 만약 내부의 .svn 폴더가 임의로 삭제되었거나 변경이 되었을시 익스포트를 못 할 경우도 있다.
하지만 아래와 같이 shell script 를 이용하여 레지스트리를 편집하면 전혀 SVN 프로그램에 영향받지 않고서도 손쉽게 .svn 폴더를 삭제할 수 있게된다.
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN]
@=”Delete SVN Folders”
[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Folder\shell\DeleteSVN\command]
@=”cmd.exe /c \”TITLE Removing SVN Folders in %1 && COLOR 9A && FOR /r \”%1\” %%f IN (.svn) DO RD /s /q \”%%f\” \”"
사용방법은
1. 임의의 텍스트 파일을 생성한다.
2. 위 스크립트를 복사하여 붙여넣기를 한다.
3. 파일명을 deleteSvn.reg 로 변경한다. (파일이름은 상관없다 단, 확장자는 reg)
4. 생성한 reg 파일을 더블클릭하여 레지스트리에 등록한다.
위 과정을 거친후에 .svn 을 포함하고 있는 폴더에 마우스를 가져다가 우클릭을 하면
‘Delete SVN Folders’ 라는 새로운 메뉴가 보일 것이다.
이 명령을 실행하면 그 폴더를 포함하여 자식폴더까지 모든 .svn 폴더가 삭제될 것이다.
단, 주의사항은 반드시 .svn 폴더를 제거하려고 하는 소스의 복사본으로 실행을 해야한다는 것이다.
그렇지 않으면 원본 svn 폴더가 삭제될 것이다.
reference from article below
http://weblogs.asp.net/jgalloway/archive/2007/02/24/shell-command-remove-svn-folders.aspx
0 Responses to “Remove SVN Folders(Shell scripting)”