본문 바로가기

BUGboard

SVN 연동(PHP_SVN.dll 구동)과 실행에 필요한 파일 확인하는 툴(Dependency Walker) - BUG board 구축


BUG board 는 SVN Log 를 연동하여 게시판 구조로 보여주는 기능이 있습니다.
SVN Log 를 게시판 구조로 가져오면 다음과 같은 장점을 얻을 수 있습니다.

- 검색이 빠르고 편리합니다. (Tortoise 의 Show Log 보다 훨씬 사용하기가 편합니다)

- SVN 커밋 상태를 보기가 쉽습니다
. (마우스 우클릭을 할 필요가 없습니다)

- 여러 저장소나 태그/브랜치를 한번에 시간순으로 확인할 수 있습니다
. (저장소 별로 따로 로그를 확인할 필요가 없습니다)

- Log 규약을 통해 패치 미적용 여부를 체크할 수 있습니다
. (현재의 테스트 바이너리에 해당 소스가 들어갔는지 여부를 바로 확인 수 있습니다)

- 게시판의 해당 버전, 해당 파일을 바로 다운로드 할 수 있습니다
. (Revision 을 되돌릴 필요가 없습니다)


SVN 게시판은
- 문서를 저장하고, 다운로드 가능한 Document 타입과
- 소스를 저장하고, 여러 저장소를 묶어서 보여주는 Source 타입이 있습니다.


※ 현재 BUG board 의 Source 타입에는 다운로드 기능이 포함되어 있지 않습니다. 
    아직 BUG board 를 배포하고 있지 않기 때문입니다.



Document 타입은 파일관리를 폴더구조로 할 수 있으면서도,
업데이트를 게시판 형태로 확인하고,
필요하면 바로 웹에서 열어볼 수 있다는 점이 매우 편리합니다.

Source 타입은 간단한 로그 규약을 통해,
현재 테스트를 하고 있는 바이너리의 소스 버전을 확인할 수 있고,
검색 키워드 하나로 브랜치와 메인 저장소의 업데이트 누락 여부를 체크 할 수 있다는 점이 매우 유용합니다.




이러한 SVN 게시판을 사용하기 위해서는,
PHP 에서 기본으로 제공하지 않는 확장 dll 을 사용하여야 합니다.
  1. 첨부한 php_svn.dll 파일을 extension 폴더에 넣고,
  2. php.ini 에 등록한 후,
  3. 아파치 서버를 재시작 하면 

PHP 에서도 SVN 관련 함수를 사용할 수 있습니다. (관련 문서 - http://kr.php.net/manual/en/book.svn.php)



그런데, php_svn.dll 파일이 널리 사용되는 파일이 아니다 보니
OS 에 상황에 따라 이와 함께 필요한 dll 종류도 다 제각각 인것 같습니다.

일일이 dll 을 다 조사하는 것이 어려워,
실행에 필요한 파일을 확인해 주는 유용한 툴을 소개 합니다.


Dependency Walkerhttp://www.dependencywalker.com




사용법은 매우 간단합니다.
php_svn.dll 을 마우스로 집어 Dependency Walker 에 던져 넣으면 됩니다.
필요한 dll 인데, OS 에 들어 있지 않다면, 구글링으로 해당 dll 파일을 구해 system 폴더에 넣어주면 됩니다.

구글링 하실 분들을 위해, 여러 OS 에서 테스트 하면서 모은 dll 들도 함께 묶어 첨부합니다.


[dll 리스트]
- advapi32.dll
- bcrypt.dll
- duser.dll
- ieshims.dll
- kernel32.dll
- libapr.dll
- libapriconv.dll
- libaprutil.dll
- libdb43.dll
- linkinfo.dll
- mf.dll
- MFPLAT.dll
- mpr.dll
- msvcrt.dll
- ncrypt.dll
- ntdll.dll
- rpcrt4.dll
- shell32.dll
- user32.dll
- uxtheme.dll
- wer.dll
- wlanapi.dll
- wmdrmsdk.dll
- wzcsapi.dll