ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [팀프로젝트] svn서버(협업툴)
    비전공자 공부일기 2019. 7. 4. 14:18

    2019. 07. 05

    내가 정리한 게 아닌, 강사님의 필기를 복붙하고 글양식만 정리한 내용

     

     

     

     

     

    형상관리서버

    - 형상관리서버(협업툴) : 소스, 버전등 변경 관리 >> 클라이언트에서는 eclipse를 이용해 작업
    => CVS, SubVersion(SVN), Git등 

    ※ CVS 플러그인은 설치되어 있으나 SubVersion은 플러그인을 설치해야 사용 가능

     


    repertory(저장소) 역할

    IMPORT        클라이언트   ---->   서버   (팀장이 만든 프로젝트를 최초에 한번 전송) 


    CHECKOUT    클라이언트   <----   서버   (서버에 존재하는 프로젝트를 팀원이 다운로드
                                                            - 다른 클라이언트에서 작업하고자 할 경우 : 한번만 전송)  

    COMMIT       클라이언트   ---->   서버   (작업한 파일을 서버로 전송 : 자주 실행) 

    UPDATE        클라이언트   <----   서버   (서버에 변경된 파일을 클라이언트로 전송 : 자주 실행)  

     

    --------------- commit, update는 습관이어야 한다!!!



    1. Visual SVN Server 서버 설치 <-- 팀장만 할 것

    1) 서버 프로그램 다운로드 및 설치 >> https://www.visualsvn.com/server/download/

    2) user 및 group 생성 후 user를 group에 분류
            ---- 아무나 사용하지 못하도록 user 생성

            ---- 사용자가 많지 않을 땐 굳이 group을 만들어 분류하지 않아도 됨


    3) repository를 생성하여 그룹(사용자)에 권한 부여  

    4) URL를 이용해 확인

     


    2. 이클립스에 SVN 클라이언트 설치

    1) help >> install New Software 클릭

    2) work with => Oxygen - http://download.eclipse.org/releases/oxygen 선택

    3) Collaboration >> Subversive SVN Team Provider 선택 >> next >> next >> 동의 >> 설치

    4) 플러그인 설치 후 이클립스 재실행행 >> window >> Preferences >> Team >> SVN

     >> SVN Connector >> Get SVN Connector >> SVN 1.8.14 선택 >> next >> next >> 동의 >> 설치

    5) Connector 설치 후 이클립스 재실행

    6) 확인 : window >> Preferences >> Team >> SVN > SVN Connector 확인



      3. 이클립스에서 SVN Server에 접속

    1) IMPORT 작업 : 프로젝트를 서버에 전송하는 작업(한번만 실행) - 팀장이 실행

           프로젝트 생성(메인페이지 작성) >> 프로젝트 >> 오른쪽 버튼 >> Team >> Share Project >> SVN 선택 >> URL, 계정, 암호 입력 

           >> Advanced Mode 체크 : project repertory layout의 use single project 선택 >> finish

           >> import(서버에 파일 전송 - .으로 시작되는 폴더 및 파일 미전송) >> Visual SVN Server 또는 웹브라우저에서 확인    

          ※ revision number(리비전넘버) : 파일에 붙은 숫자 >> commit 할 때 마다 숫자가 증가

          ※ 전송하고자 하는 디렉토리에 파일이 하나도 없다면 전송되지 않는다.

          ※ 미전송 파일을 계속 업로드 하지 않도록 설정

             window >> show view >> Navigator >> ?로 설정된 폴더 및 파일 >> Team >> add yo SVN: ignore 처리    

    2) CHEKOUT 작업 : IMPORT된 프로젝트를 클라이언트로 전송(클라이언트가 틀린 경우에만 사용) - 팀원만 적용

           New >> Other >> SVN >> Project From SVN >> Next >> 인증 >> URL : Browse 클릭 >> 프로젝트의 trunk 선택 >> finish >> 프로젝트 선택 설정 >> finish

           >> Web > Dynamic Web Project >> 프로젝트명 입력 >> finish

           ※ CHEKOUT 작업시 src와 WebContent만 있는 경우 새로운 프로젝트를 사용하여 작성

           ※ 미전송 파일을 계속 업로드 하지 않도록 설정

             Navigator >> ?로 설정된 폴더 및 파일 >> Team >> add yo SVN: ignore 처리    

        3) COMMIT 작업 : 프로젝트에서 파일을 변경한 후 서버로 파일을 전송

           변경된 파일(앞에 > 표시가 됨) >> 오른쪽 버튼 >> Team >> Commit 선택

        4) UPDATE 작업 : 서버에 저장된 파일을 전송 받는 작업(프로그램 변경 전에 한 번 실행한 후 사용하는 것이 좋다.)

           프로젝트 >> 오른쪽 버튼 >> Team >> Update 선택 
      
       ※ 서버로 전송되지 않도록 만드는 방법(동기화 되지 않아야 되는 파일 선택)

          IMPORT 할 때 환경설정 파일은 전송(동기화) 하지 않는다.       

          => Window >> Show View >> Navigator에서 동기화 하지 않을 파일(디렉토리) 오른쪽 버튼 >> Team >> Add to SVN : ignore 선택하여 무시하는 방법도 있다.

       ※ Commit 할 경우 상위 revision number가 존재하는 경우 Commit 에러 발생

         해결> Window >> Show View >> Other >> Team >> Synchronize View 선택 >> 오른쪽 버튼 >> Synchronize 선택 

               >> 문제가 되는 파일이 존재 >> 오른쪽 버튼 >> Override and Commit(또는 Override and Update) 선택

         해결> 문제가 되는 파일이 존재 >> 더블 클릭 >> 화면에서 프로그램 비교후 파일 내용 변경 >> Make as Merged >> commit 가능(나중에 수정 가능)

               pakeage explorer에서 update한 경우 동일한 라인의 데이타를 변경한 경우 충돌 발생 >> 문제 파일 수정 후 오른쪽 버튼

       ※ incomming(update 목록) 또는 outgoing(commit 목록) 확인 => Synchronize View에서 선택하여 전체 update 또는 commit 가능 

       ※ SVN 영역 

          => trunk : 소스의 주 개발 작업을 진행하는 폴더 

          => branches : 소스의 실험적인 작업을 진행하는 폴더 

                        소스의 현재 버전을 유지보수 하고, 현재 버전을 기반으로 차기 버전을 개발할 경우 이 폴더 이용 

          => tags : 현재 릴리즈된 소스를 관리하기 쉽게 따로 보관하는데 사용 
     
                    개발을 위한 것이 아니라 보관을 위한 것이기 때문에 export만 해야 한다 

                    체크아웃하여 커밋 할 경우 경고 메시지가 출력된다. 
      
        5) Tag 작업 : 소스를 따로 보관하는 작업

          프로젝트 >> 오른쪽 버튼 >> Team >> Tag >> 태그명 지정 >> finish

        ※ 다른 작업으로 변환 

           프로젝트 >> 오른쪽 버튼 >> Team >> switch >> URL 또는 revision 변경 후 finish

      - 프로젝트 완성하면 프로젝트를 war파일로 저장하여 서버의 webapps에 전송하면 된다.   

    '비전공자 공부일기' 카테고리의 다른 글

    [전산기초] 불 대수  (0) 2021.07.08
    [] 배열 - 얕은복사, 깊은복사  (0) 2020.06.17
    19.08.28 필기  (0) 2019.08.28

    댓글

coding wanee