티스토리 툴바


분류없음2009/04/05 15:25


1.    형상관리
개발
환경    5

1.1.    기본
환경    5

1.2.    Subversion Plug-in설치    5

1.3.    Subversion Repository 등록    9

1.4.    Project Check Out    12

1.5.    Tortoise
이용한
형상관리    14

2.    MiPlatform 개발
절차    18

2.1.    MiPlatform으로
프로젝트
열기    18

2.2.    MiPlatform 변경사항
형상관리에
적용하기    21

3.    배치
개발
절차    27

3.1.    개발서버에서
체크아웃
받기    27

3.2.    파일
추가/삭제

커밋    28

3.3.    파일
업데이트    30

3.4.    ProC 데모
애플리케이션    31

4.    FAQ    33

4.1.    내가
수정한
파일을
다른
사람이
이미
올려서 commit
실패한
경우
어떻게
하나요?    33

4.2.    
파일은
나만
변경하고
싶습니다.    37


 


 


 

형상관리 개발 환경

기본 환경

  • JDK 1.5
  • Eclipse 3.2 WTP 버전또는 ProBuilder 4.x

또는 TortoiseSVN (TortoiseSVN 사용시 1.5
참조)

  • MiPlatform PID V3.2.0 Unicode

(문서는 소프트웨어가 설치된 것을 기본으로 설명하고 있습니다.)

Subversion Plug-in설치

Step1: ProBuilder(또는 Eclipse) 도움말 menu 에서 Installation
시작한다.

Step2: '설치할 기능에 대해 검색'선택하고 다음을    

Step3: '원격 사이트' 버튼을 누른다 

Step4: 아래와 같이 입력하고 '확인'버튼을 누른다.

이름: Subclipse 1.2.x (Eclipse 3.2+)

URL: http://subclipse.tigris.org/update_1.2.x

               Step5:새로 입력한 사이트가 선택되어 있는 것을 확인하고 '완료'버튼을 누른다.    

                Step6:    아래와 같이 Subclipse 선택하고'다음' 버튼을 누른다.            

                Step7:    라이선스 확인 설치를 진행한다. 설치가 완료된 Eclipse 다시 시작하게 된다

    Subversion Repository 등록

Step1:오른쪽 상단의 '+' 표시가 있는 Perspective 추가 버튼을 누른 '기타'선택한다.  

Step2:  Perspective 열기  에서 'SVN Repository Exploring'선택한다.  

Step3: SVN Repository View 에서 오른쪽 버튼을 누르고 'New'->'Repository Location'선택한다.

Step4: 'Add SVN Repository'창에서 Url svn://203.236.20.26/egis 를 입력하고 '완료'누른다.

Step5: 부 여받은 형상관리 계정과 비밀번호를 입력하고 '확인'누르면 repository 생성된다

Step6:
등록된 repository 아래와 같이 확인이 가능하다 

    Project Check Out

Step1: 아래와 같이 원하는 프로젝트를 체크아웃 받는다. 

Step2:  아래와 같이 창이 뜨면 원하는 대로 편집하여 checkout 받을 있다. 일반적으로는 그냥 '완료'버튼을 누른다

Step3:
'완료'버튼을 누르고 나면 checkout 진행이 된다. Checkout 완료된 후에는 Java Perspective  는 Proframe Perspective Package View 에서 다음과 같이 checkout 받은 project확인할 있다.


 

Tortoise 를 이용한 형상관리

Step1: 아래 사이트에서 TortoiseSVN 다운 받아 설치합니다. 설치후 재부팅을 하게 됩니다.  
  필요에 따라 언어팩을 설치할 있습니다.  

Step2: 탐색기에서 checkout 받을 폴더를 만들고 오른쪽 버튼을 눌러 'SVN Checkout' 선택한다.

Step3: 'URL of repository' 'svn://203.236.20.26/egis'입력하고 오른쪽 버튼을 누릅니다.

Step4: 아래와 같이 계정과 비밀번호를  입력하고 'OK'버튼을 누른다

Step5: 원하는 디랙토리를 선택하고 'OK' 버튼을 누른다.

Step6:  'OK'버튼을 누른다
 
Step7:  아래와 같이 해당 디렉토리의 리소스가 탐색기로 다운받아지고 탐색기창에 표시가 나타 난다.
( : local 데이터가 형상관리 repository 데이터와 일치함을 의미)
로컬에서 파일을 수정한 경우 아래와 같이 표시가 나타납니다. 

MiPlatform 개발 절차

형상관리 환경하에서의 개발을 위해 MiPlatform 개발시에도 Eclipse 활용한다.
 

MiPlatform으로 프로젝트 열기

Step1:    MiPlatform실행하고 'Tools'->'Project Manager'선택한다. 

Step2: 'Project Manager'에서 'Add Exist'버튼을 클릭한다 

Step3:  Eclipse(또는 TortoiseSVN)에서 checkout 받은 프로젝트안의 'WebContent' 폴더를 선택한다.

Step4:    'SKT_EGIS_ci_main_Win32.xml'선택하고 '열기'버튼을 누른다.  

Step5:
'OK'버튼을 누른다

Step6:
'Open Project' 버튼을 누른다.

Step7: 'SKT_EGIS' 프로젝트를 선택하고 'OK' 버튼을 누른다.
 

MiPlatform 변경사항 형상관리에 적용하기

Step1: 수정한 파일을 저장한다.  

Step2:
(ToroiseSVN 사용하는 경우 Step10부터 보세요.)

Eclipse
열고 프로젝트를 선택한호 'F5' 또는 오른쪽 버튼을 누르고 '새로 고치기'선택한다.

Step5:
변경된 부분이 있다면 아래와 같이 '*' 표시가 붙게 된다

Step6: 변
경된 파일 또는 폴더를 선택하고 오른쪽 버튼을 누르고 ''->'Commit'선택한다.

Step7:  
아래와 같이 comment 입력하거나 택하고 적용될 resource 확인하고 '확인' 버튼을 누른다.

Step8: 
탐색기 상에 '*' 없어졌다면 정상적으로 적용이 것이다.

Step9:
''->'Show History' 선택하면 변경 이력을 확인해 수도 있으며 각 버전간 비교도 해볼  수 있다.
Step10:  Tortoise 사용할 경우 아래와 같이 변경된 파일과 상위 폴더에 표시가 나타납니다.

Step11: 변경된 파일 또는 폴더를 선택하고 오른쪽 버튼을 누르고 SVN Commit 선택합니다

Step11: 아래와 같이 원하는 메시지를 작성하고 'OK' 버튼을 누른다

Step12:
정상적으로 처리됐다면 아래와 같이 메시지가 나타난다.
 

배치 개발 절차

개발서버에서 체크아웃 받기

Step1: Telnet통해 개발자 계정(bsdev1, ccdev1…) 으로 로그인 한다.
Step2:  만일 자신의 계정이 bsdev1 이라면 아래와 같이 입력한다.    
Unix 계정  암호는 그냥 엔터를 치고 넘어가면 형상관리 계정과 암호를 넣도록 나타난다. 각각 입  하고 엔터를 치면 bsdev1 이라는 디렉토리에 해당  업무의 batch 프로젝트가 체크아웃된다.      

파일 추가/삭제 및 커밋

Step1:  만일 src_bat 디렉토리에 test.c 라는 파일이 추가하였다면 파일을 형상관리 대상에 추가하  야 한다. 형상관리 대상 추가는 아래와 같이 있다. 한번 추가된 대상은  step 생략하a면 된다.

Step2: 
대상으로 추가한 후에는 해당 파일을 형상관리 repository커밋을 해야 반영이 되게 된다.위와 같이 엔터를 치면 vi 가 자동으로 실행되고 vi 통해 comment 입력할 있다. vi 종료  :' 누른 'qw'입력하고 엔터. 만일 comment 남기지 않으려면 그냥 곧바로 ':'누르고  q'입력)   

Step3: vi 종료되면 형상관리 인증절차가 나타납니다. 마찬가지로 형상관리 계정과 암호를 넣으면 정상적으로 커밋이 됩니다. post-commit 오류는 무시하시면 됩니다.

Step4:
파일을 삭제하고자 경우 아래와 같이 입력하여 삭제 대상 처리를 한다.

S
tep5: 삭제대상으로 추가한 후에는 해당 파일을 형상관리 repository커밋을 해야 반영이 되게 된다.

위와  같이 엔터를 치면 vi 자동으로 실행되고 vi 통해 comment 입력할  있다. vi 종료 ':' 를  누른 'qw'입력하고 엔터. 만일 comment 남기지 않으려면 그냥 곧바로 ':'누르고 q'입력)

Step6:
vi 종료되면 형상관리 인증절차가 나타납니다. 마찬가지로 형상관리 계정과 암호를 넣으면  정상적으로 커밋이 됩니다. post-commit 오류는 무시하시면 됩니다. 

파일 업데이트

다른 사람들에 의해 업데이트 파일은 아래와 같이 업데이트 받을 있다.

ProC 데모 애플리케이션

현재 repository 에는 ProC 대한  데모 애플리케이션이 올라가 있습니다. 데모 애플리케이션은 아래와  같이 체크아웃 받아 테스트 해보실 있습니다.
Step1: 아래와 같이 Subversion 명령을 통해 체크아웃을 받습니다
Step2:  아래 와같이 make 실행하여 소스를 compile 합니다.
Step3:  아래와 같이 실행파일을 실행해 있습니다.
 

FAQ

내가 수정한 파일을 다른 사람이 이미 올려서 commit 이 실패한 경우 어떻게 하나요?

이와 같은 경우 아래와 같은 오류 메시지가 발생합니다.

이와 같은 경우 history 확인해 보면 아래와 같이 내가 checkout 받은 리비전은 154 인데 누군가 commit 을  해서 165 리비전이 올라가 있는 것을 있습니다 

우선 CVS Subversion 은  로컬 PC리비전이 최신 버전이 아니면 기본적으로 commit 안됩다. 따라서  경우 로컬 PC 자원의 리비전을 최신으로 올려주어야 합니다.      해당  esource update 를  받게 되면 두가지로 현상이 나타 있습니다

먼저  내가 수정한 부분과 repository 에  수정한 부분이  충돌(conflict)없는 경우 로컬에서 수정한 부분과 repository 최신 버전이 자동으로 머지됩니다.   만일  내가 수정한 부분과 repository
수정된  부분이 conflict 발생하는 경우 (같은 라인을 수정했다든지..) update 를 받으면  아래와 같이  여러 개의 파일이 생기게 됩니다. (.mine 로컬파일, r168, 169 각각 해당 리비전의 파일입니다.) 
따라서 이경우 충돌 부분을 확인을 하고 수정하여 합쳐주는 작업을 해야 합니다만일
로컬에  있는 파일로 무조건  덮어 쓰려면 아래와 같이  로컬히스토리 이전 버전으로 바꾼 후에 commit 하면 됩니다.
 

만일 로컬과 원격 repository 자원의 머지가 필요하다면 아래와 같이 Synchronize 기능을 사용하면편리합니다.Synchronize 수행한 후에는 아래와 같이 나타납니다. 빨간색으로 양쪽 화살표가 있다면 conflict 이  발생한 것입니다. 아래와  같이 conflict 발생한 소스에 대해서 양쪽 버전을 비교해있습니다오른쪽  위의 버튼을 이용하여 차례차례 차이가 나는 것을 비교해 있고 원격지의   변경사항을 로컬 파일에 적용시킬 있습니다.  
 이와 같이 수정한 후에 파일을 저장합니다. 저장한 후에 해당 파일을 Repository 최신 파일로 바꿔  버립니다  이렇게 하면 로컬PC자원은 최신 리비전으로 업데이트 됩니다. 이후에 다시 로컬 히스토리 이 버전으로 바꾸게 되면 리비전은 최신인 상태에서 Synchronize 에서 작업했던 파일 내용으로 바뀌기 때문에 commit 가능하게 됩니다.

이 파일은 나만 변경하고 싶을 때는 어떻게 하나요?

Subversion 에서는 lock 기능을 제공합니다. 아래와 같이 로컬리소스에 Lock 설정하면 다른 Lock 정상적으로 설정되면 아래와 같은 표시가 나타납니다. (다른 사람이 이미 Lock 한경우에는 표시가 나타나지 않습니다.)

 주의할 점은 Subversion 에서 Lock 절대적이지 않습니다. 단순한 안전장치라고 보시면 되고요 얼마든지 다른사람이 설정한 Lock 가져갈 있습니다. (Lock 적용시 Steal Lock 체크박스가 있습니다.)

[출처] 형상관리 개발|작성자 자근앙마

Posted by 싸나이외길인생
분류없음2008/12/08 14:50
 

CVSNT 설치

http://www.march-hare.com/cvspro/

위 사이트에 들어가서 우측 하단의 Free Download메뉴의 Windows를 선택하고

E-mail,First Name,Last Name 그리고 Export Server(USA) 선택한 후

맨 아래 Accept terms 버튼을 눌러 다운 받는다.
다운 받는 것도 귀찮다면.. 이걸 다운 받으면 된다.


설치는 다운로드 완료된 파일을 실행시켜주고 Next Ok 만 열심히 눌러준다.
설치후 리붓된다. 작업하던 자료는 저장하길 바란다.

 

 

내컴퓨터 속성을 눌러 위 창과 같은 메뉴를 열고 고급탭>환경변수>사용자 변수에 PATH 를 확인하고 CVSNT 경로가 입력되어있지 않다면

CVSNT의 설치경로 (ex: C:\Program Files\CVSNT\)를 추가합니다. 각 경로는 ; 로 구분한다.

 

여기까지 완료했다면

실행 메뉴를 열고 cmd를 입력해 콘솔창을 실행시킵니다.

 C:\>cvs

Usage: cvs [cvs-options] command [command-options-and-arguments]

  where cvs-options are -q, -n, etc.

    (specify --help-options for a list of options)

  where command is add, admin, etc.

    (specify --help-commands for a list of commands

     or --help-synonyms for a list of command synonyms)

  where command-options-and-arguments depend on the specific command

    (specify -H followed by a command name for command-specific help)

  Specify --help to receive this message

 

The Concurrent Versions System (CVS) is a tool for version control.

For CVS updates and additional information, see

    the CVSNT home page at http://www.cvsnt.org/

 

C:\>

            

cvs 를 입력하고 위와 같은 설명이 출력된다면 설치는 정상적으로 완료 되었다.

CVSNT를 실행시켜 먼저 Services 의 두 개 항목을 다 Stop 시켜야 한다.

 

Repository 설정

 

Run as 에는 컴퓨터명\사용할계정명

Default domain 에는 컴퓨터명

Temporary 에는 적당한 위치에 폴더를 만들어 지정해준다.

나머지 옵션들은 기본세팅을 사용하는 것을 추천한다.

위와 같이 체크한다.

확인 버튼을 클릭 후 콘솔창을 열어서 확인한다.


컴퓨터
cvs passwd -r 서버계정명 -a 새로만들계정명

- 옵션
        -a      Add user
        -x      Disable user
        -X      Delete user
        -r      Alias username to real system user
        -R      Remove alias to real system user
        -D      Use domain password

[참고] set cvsroot=:pserver:KSS@127.0.0.1:/CVS 를 환경변수(사용자변수)에 추가해야 한다. 매번 입력하지 않으려면


이제 CVSNT 설정은 끝났고 이클립스에서 CVS 저장소 위치를 설정해보자.

Window -> Open Perspective -> Other 메뉴에서 CVS Repository Exploring 이라는 Perspective 를 추가해주자

바로요것...

 

 

 

CVS Repositories 라는 창이 생기면 우클릭 해서 새로운 Repository Location 을 설정해준다.

 

 

아래와 같은 창이 뜨면

호스트, 저장소 위치, 접속할 계정을 입력하자.

 

이제 내가 가지고 있는 프로젝트를 저장소에 올려보자.

 

Project Explorer 나 Navigator 에서 프로젝트명을 우클릭하여 Team -> Share Project 를 선택하고 앞서 만들어논

저장소를 골라주면 된다.

이제 원하는 폴더나 파일을 우클릭하여 팀 메뉴에서 Commit 이나  Update 를 선택해 저장소에 올리거나 내려받을 수 있다.

 

CVS 를 사용하면서 파일이나 폴더명을 바꾸면 커밋이 안된다. 대소문자만 바꿔도....

그외 몇가지 단점이 있는데 그것을 보완하기 위해 나온 것이 SVN(subversion) 이라고 한다.

실제 실무에서 많이 쓰는게 뭔지는 모르겠지만 뭘 쓰던지 목적은 같으니 한번만 사용해보면 익숙해 지리라 생각한다.

 


Posted by 싸나이외길인생