svn

SVN을 좀 비주얼 하게 관리 하게 하는게 Visual SVN.

실제로 현재 울 회사의 소스 관리도 visual svn에 맡긴 상태입니다.

 

하지만 굳이 소스관리만 하라는 용도는 아니고....

 

울 회사에서 게임 패치 서버를 만들려고 하는데, 보통은 CDN업체에 맡깁니다..

(파일 분산 다운로드 라던가.. 뭐 그런 문제로...)

하지만, 외국 회사의 경우 그런걸 할 처지가 안되는 관계로 (몇몇 국가에선 CDN이 없다고 바이어가 박박 우깁니다....)

약간의 편법을 쓴게 svn을 이용한 패치 서버 입니다.

 

우선, 패치 파일들을 넣을 svn 서버를 설치하고

svn의 repositories 안에 파일을 넣습니다.

 

그리고 이것을 IIS6 or 7에서 관리하는 http or ftp의 주소가 링크된 폴더랑 파일 싱크를 맞추면

업데이트 파일을 commit 시키는것으로 자동으로 cdn이든 사설 IDC든 파일이 다운로드가 가능해집니다.

 

문제는... commit 을 시킬때 이것이 링크된 폴더랑 자동 싱크를 맞추는 것인데, visual svn 안에 post-commit 기능이 있더군요.

 

우선...

 VisualSVN 안의 레파토리에서 모든작업 -> Manage Hooks 를 선택합니다.

 

 

안에 보시면 Post-Commit hook 이 있습니다.

이건.. 만약 이 레파토리에 commit이 들어오면 그 뒤에 자동으로 뭔가 실행시켜주는 난입니다.

배치파일 양식으로 해주시면되고요. 

 

내용은

@echo on
"C:\Program Files (x86)\VisualSVN Server\bin\svn.exe" export [SVN의URL주소] [싱크시킬 폴더] --username [유저이름] --password [암호] --force

이외에 여러 응요이 가능하다고 보여지네요.

 

 

 

참고 사이트 http://sway.tistory.com/715

http://blog.naver.com/cuteorb1/150005154267
순서도와 함께 미연시 개발에는 필수!(....겠지?)

필자는 스토리 라인과 함께 스토리의 정리, 자료의 정리 부분에서 마인드 맵을 활용하고 있다.


마인드 맵이란, 말 그대로 생각을 정리 한 지도라고 보면 된다. 한 덩어리에서 계속 뻗어나가는 가지들을 활용해 자료를 정리하기 때문에, 한 눈에 자신이 생각한 모든 것을 표현하고자 할 때 쓰면 굉장히 좋다.


마인드 맵 프로그램 중, 가장 사용하기 쉽고 추천 할 만한 프로그램인 지니웨어 마인드 맵을 한 번 다뤄보자.



 

 
이 것이 필자가 추천하는 프로그램, 지니웨어 : 마인드 맵이다.
프로그램 상으로는 홈페이지 주소가 저것으로 되어있지만(접속이 불가능함),
www.ubitizn.com으로 들어가서 프로그램을 다운로드하자.
 

 
프로그램을 다운로드 하고 실행시키면 첫 화면에 하나의 덩어리가 보인다.
더블클릭하면 제목을 수정할 수 있다.
필자는 '프로젝트'라는 제목을 사용해봤다.
 
 
 


 

 


 

그렇다면 이제 가지들을 추가 해 자신의 생각을 정리할 시간.
제목을 한번 클릭한 후, 엔터키를 누르고 내용을 적고 다시 엔터키를 누르기를 반복하면 쉽게 가지들을 추가할 수 있다.
1번으로 지정한 영역을 클릭하고 마우스로 다른 곳에 드래그&드롭하면 가지의 위치를 바꿀 수 있다는 것도 참고 하자.
 
 


 

'메신저 시스템'이라는 것은 게임 시스템 가지 안으로 들어가야 정상이겠지?
메신저 시스템 가지 부분을 드래그&드롭하여 게임 시스템 밑으로 집어넣어보자.
 
 


 

아주 간단하게 이 곳으로 삽입 될 것이다. 참 쉽죠??
 
 


 

가지 색과 글씨 색, 형광펜기능(글 바탕색)을 지정하고 싶으면 메뉴에 위치해 있는 다음 버튼을 활용하면 누구나 쉽게 수정할 수 있을 것이다.
 
 


 

필자는 마인드 맵을 활용해 그림과 같이 스토리 라인을 잡은 후, 세부 이벤트들을 마인드 맵으로 설정하는 편이다. 의외로 보기 편하고, 이 것에 맞춰 시나리오를 쓰기 때문에 상당히 편하게 시나리오를 쓸 수 있더라.!
 많은 것을 정리해서 맵의 크기가 커졌다고 해도, GIF기능으로 저장이 가능하니 1M이상의 파일은 왠만하면 나오지 않는다는 장점도 함께 가지고 있다.
 
visio에 있는 '브레인스토밍'부분에서도 역시 마인드 맵을 만들 수 있지만, 지니웨어 마인드 맵과 비교해 한계가 많고, 사용하기도 까다롭다. 지니웨어는 30일 셰어웨어로 쓸 수 있으니, 프로젝트 시작에 맞춰 설치하고 마인드 맵을 작성 한 후, 30일이 지나면 사용하지 않는 것을 권장한다(...).
물론 이 프로그램을 자주 사용하게 된다면, 하드포맷을 열심히 하거나(...) 20만원 상당을 결제하고 정식으로 사용해야겠지; 쿨럭.
 http://blog.naver.com/cuteorb1/150005064458
효율적으로 시나리오 파일을 관리/수정 할 수 있을 것이다.

필자가 가장 처음에 Vnap을 접해서 연습용 게임을 만들어 봤을 때,

계속 시나리오를 쓰고 저장하다보면 txt파일만 수십개에 달하는 상황이 발생했었다.


이렇게 된다면 게임을 모두 만들게 되서 버그를 찾아내 수정할 때, 도대체 이 내용이 어떤 Txt파일인지 본인도 상당히 당황하기 마련.


이럴 때 순서도를 작성한다면, txt파일이 어디에 쓰였는지 확실하게 알 수 있다.

(스토리 라인 설정도 순서도를 만들며 수정/보완할 수 있으니 좋다고 할 수 있겠지)

순서도는 물론 이러한 이유로만 쓰이는 것이 아니다. Vnap을 이용해 팀을 만들어 게임을 제작하게 될 시에도 순서도가 있어야 기획과 시나리오, 그 외 파트의 팀원들이 원활하게 작업할 수 있기 때문. 여러가지 장점이 많은 관계로 순서도의 사용은 Vnap 게임에 대한 기획에서도 매우 중요하다고 할 수 있다.


사실 필자는 처음에 순서도를 작성할 때는 문방구에서 산 전지를 벽에 붙여 마카로 끄적거리면서 순서도를 작성했던 기억이 새록새록 떠오른다. 이 후에는 포토샾을 이용해 순서도를 제작하게 되었고....


하지만 이 모든 게 뻘짓 이었다.


Ms office에 포함되어있는 Visio라는 프로그램을 사용하면 간단하게 해결이 가능하기 때문.

강사님이 아니었다면 난 아마 지금도 뻘짓하고 있었을 지도<-


<그림 1> 오피스 설치 화면에서 이 것을 클릭하면 설치 된다

 

 


모두 설치를 끝냈다면 Visio를 실행해보자.

Visio를 실행하면 먼저 순서도 형식의 문서를 만들어 봐야겠지?




<그림 2> 왼쪽 메뉴에서 순서도 클릭 -> 나오는 화면에서 기본 순서도를 클릭하면 된다




순서도 양식으로 문서를 만들었다면 좌측 창에 셰이프 라는 것이 보인다.

Vnap으로 게임을 만들 때, 어지간하게 복잡하지 않은 게임이라면 시작의 수행/끝 버튼과(프롤로그에 사용) , 프로세스(일반 txt문서를 나타낼때 사용), 그리고 판단(선택지 :: select 명령어)의 세가지 버튼만 알면 된다.

이 셰이프들을 선택해 마우스로 드래그 하면 문서 위에 올릴 수 있다.





<그림 3> 꼭 알아야할 셰이프들

 

 

 

<그림 4> 셰이프들을 마우스로 선택해 드래그하면 문서위에 올려진다




문서 위에 올렸다면 이제 해당 셰이프들을 줄로 엮어야 겠지?

아, 그 전에 단축키를 미리 소개한다. 꼭 알아야 할 단축키니까 반드시 마스터 합시다.



----------------------------------------------------------------------------------------

단축키 목록

CTRL + 1 : 기본적인 입력 방식. 마우스로 셰이프의 이동, 크기 조절이 가능하다.

CTRL + 2 : 셰이프 안에, 혹은 문서 내에 글씨를 쓸때 사용한다.

CTRL + 3 : 셰이프와 셰이프를 엮는 선을 만든다.

이 3가지 단축키를 자유자재로 사용하며 순서도를 만드는 것이 당연히 편리하겠죠?

----------------------------------------------------------------------------------------



아무튼 셰이프를 줄로 엮으려면 CTRL + 3 단축키를 써야한다. 이 것을 클릭하면 마우스 커서에 약간의 선이 보이게 되는데, 이 것을 이용해 셰이프의 끝 부분과 끝 부분을 서로 연결해서 프로세스의 진행을 표시하는 줄을 만들게 된다.



그림5> 이런 식으로 선을 연결해 진행방향을 표시한다




이렇게 한다면 판단 부분(셀렉트 명령어를 이용한 분기점을 표현)에는 한 부분에는 호감도 다운 이나 상승을 표시등을 할 수 있는 것이다.



그림 6> 셀렉트 한번에 주인공이 죽을 경우에는 이런 식으로

 

 


 

그림 7>단순히 호감도 상승과 하락만 표시하고 원래 스토리와 합치게 하려면 이런 식으로



이렇게 하면서 해당 셰이프의 내용을 담고 있는 txt파일 써 준다면 멋진 순서도가 완성된다. 이 것을 활용해 시나리오 작업을 시작하게 되면 수정이나 추가를 할 때 마다 순서도를 보며 txt파일을 수정할 수가 있는 것.




그림 8>이렇게 하면서 순서도를 완성시키는 것이다

물론 위의 그림은 끝 부분을 지정해 놓지 않은 상태;

 


물론 파일명을 2월1일.txt(미연시에서 날짜를 나타낼때는 보통 월, 일로 나타내니까)등으로 만들면, 이 것이 더욱 쉽기도 하지만, 선택지에 따라 파일명이 달라질 수 있으니 순서도가 없이 프로젝트를 진행하면 분명히 한계점에 부닥치게 된다. 적은 분량이면 간단하게 해결가능하지만, txt파일이 30개 이상이 넘어간다면 그 때부터는 반드시 순서도가 필요하다. 귀찮다고 처음부터 순서도를 작성하지 않고 시작했다가 피본 필자. 여러분들은 모쪼록 순서도를 미리 만들고 시작하자[...]

UML
sourceforge에 오픈 소스 프로젝트로 올라와있는 UML 그리기 툴입니다.
아는 분이 소개해 주셔서 간단히 클래스 구조도만 그려서 시스템 구조 파악에 사용하고 있는데
rose같은 프로그램에 비해 가볍고 쓸만합니다.
소스로부터 다이어그램으로 구축하는 기능도 있어서 소스 분석에도 유용 ^^/
C++코드인 경우 Tools메뉴 > C++ > Reverse Engineer..
 

출처 : http://cafe.naver.com/gcn/1239

+ Recent posts