SVN 기반 버전 관리

리포지토리 유형에 따라 다음을 포함한 다양한 프로토콜을 통해 액세스할 수 있습니다:

  • 일반 파일 액세스(Conventional file access) – 보통 로컬 또는 네트워크 기반 리포지토리에 사용됩니다.
  • svn 프로토콜 – 일반 텍스트 또는 TCP/IP를 사용하거나, 보안 svn+ssh 동등 방식.
  • http 방식 – 일반적으로 http 상의 WebDAV를 사용하거나, 보안 https 동등 방식.

Subversion (SVN) 리포지토리는 Data Management – Design Repositories page 의 Preferences dialog에서 연결되며, 필요 시 생성됩니다.

설계 프로젝트에서 버전 관리를 사용하기 전에 완료해야 하는 몇 가지 사전 단계가 있습니다. 다음과 같습니다:

  • VCS Provider – SVN 소프트웨어 확장 기능을 설치합니다. 이 확장 기능은 기본적으로 Altium Designer와 함께 설치됩니다. 수동으로 설치하거나 제거할 수 있습니다. 확장 기능 관리에 대한 자세한 내용은 Extending Your Installation 페이지(Altium Designer Develop, Altium Designer Agile, Altium Designer)를 참조하십시오.

  • Altium Designer Preferences dialog의 Data Management – Version Control 페이지에서 SVN Version Control이 활성화되어 있는지 확인합니다.

  • SVN 설계 리포지토리를 선택 및/또는 생성하고, Altium Designer와의 연결을 설정합니다.

SVN 설계 리포지토리 관리

SVN 설계 리포지토리는 Preferences dialog의 Data Management – Design Repositories page에서 관리합니다. 이 페이지에서 다음을 포함한 여러 작업을 수행할 수 있습니다:

  • Altium Designer에 내장된 버전 관리 기능을 사용하여 새 파일 기반 SVN 리포지토리를 생성.

  • 기존 SVN 리포지토리에 연결.

  • 정의된 각 리포지토리의 활성 상태를 제어.

등록(즉, 연결)된 각 리포지토리에 대해 다음 정보가 표시됩니다:

  • Name – 리포지토리를 의미 있게 식별할 수 있는 이름. 예를 들어 리포지토리에 저장된 설계 프로젝트를 반영할 수 있습니다. 이 이름은 버전 관리에서 프로젝트를 열 때 등, 사용할 Design Repository를 빠르게 선택하기 위해 소프트웨어의 다른 곳에서도 사용됩니다.
  • Activated – 리포지토리가 시스템에서 사용 가능(활성화)한지, 또는 사용 불가(비활성화)한지 여부. 새로 생성되거나 연결된 리포지토리는 기본적으로 활성화됩니다.
  • Type – 리포지토리 유형; SVN 또는 Git.
  • Repository – 리포지토리 루트 폴더의 URL.
  • Status – Altium Designer와 리포지토리 간 연결이 성공()했는지, 또는 실패()했는지 여부. 연결에 실패하면 문제를 나타내는 코멘트가 표시됩니다.

새 SVN 리포지토리 생성

Altium Designer 내에서 새 Design Repository를 생성하는 작업은 Preferences dialog의 Data Management – Design Repositories page에서 수행합니다. 버튼을 클릭하고 연결된 드롭다운 메뉴에서 SVN을 선택합니다. Create SVN Design Repository dialog가 나타납니다.

이 dialog는 리포지토리의 폴더 위치와 방식(연결 프로토콜), 그리고 체크아웃된 설계 파일에 대한 로컬 연결 이름 및 대상 폴더 경로를 정의할 수 있는 다양한 구성 옵션을 제공합니다. svn  및 http  액세스 방식은 호스트 시스템 및 해당 액세스와 관련된 추가 정보가 필요합니다.

기본적으로 리포지토리 이름은 Repository 1로 지정됩니다. 필요에 따라 더 의미 있는 이름으로 변경하십시오. 이름 지정에는 제한이 없습니다.
  • Default Checkout Path 는 선택한 리포지토리에 대한 체크아웃 폴더로 정의된 로컬 폴더이며, 체크아웃된 프로젝트는 이후 VCS 리포지토리의 대응 항목에 연결됩니다. VCS 링크는 버전 관리 시스템에 로컬 체크아웃 폴더의 파일과 VCS 리포지토리 폴더의 해당 파일 간 차이를 모니터링하고 감지하도록 지시합니다.
  • Repository Location는 하드 드라이브(개인 사용) 또는 네트워크 위치(더 넓은 팀의 협업 사용)에 둘 수 있습니다.

필요한 설정을 모두 지정한 후 OK을 클릭합니다. 지정한 위치에 리포지토리가 생성되고, Altium Designer에서 해당 리포지토리로의 연결이 설정됩니다. Preferences dialog의 Data Management – Design Repositories 페이지에 있는 Design Repositories 목록에 항목이 추가됩니다.

새로 생성된 SVN Design Repository 예시 – Altium Designer 내에서 Local Repository로 표시됩니다.
새로 생성된 SVN Design Repository 예시 – Altium Designer 내에서 Local Repository로 표시됩니다.

현재 Altium Designer 내에서 직접 생성할 수 있는 것은 file 리포지토리 액세스 방식을 사용하는 Design Repository뿐입니다. 다른 액세스 방식(예: http 또는 https를 통한 네트워크 액세스)을 사용하는 Design Repository는 외부 SVN 인터페이스 도구를 사용해 Altium Designer 밖에서 설정할 수 있습니다. 단, 해당 도구에 http 액세스 방식을 지원하는 데 필요한 Apache 웹 서버가 번들로 포함되어 있어야 합니다. 또는 네트워크 관리자에게 리포지토리 설정을 요청하거나, 호스팅 Subversion 리포지토리 제공업체 중 하나를 사용할 수도 있습니다. 그런 다음 Altium Designer 내에서 해당 기존 리포지토리에 연결할 수 있습니다.

기존 SVN 리포지토리에 연결

협업 환경에서는 여러 사용자가 액세스할 수 있는 위치에 하나 이상의 Design Repository가 이미 생성되어 있을 수 있습니다. 이 경우 새 리포지토리를 만들 필요는 없습니다(말 그대로 바퀴를 다시 발명할 필요가 없음). 대신 필요한 기존 리포지토리에 연결하기만 하면 됩니다. 또한 리포지토리 목록에서 리포지토리를 제거했다가 다시 추가하려는 경우에도 동일합니다.

기존 리포지토리에 연결하려면 Preferences dialog의 Data Management – Design Repositories 페이지에서 버튼을 클릭하고 연결된 드롭다운 메뉴에서 SVN를 선택합니다. SVN Design Repository dialog가 나타납니다. Altium Designer 내에서 리포지토리를 참조할 이름을 입력하고, 기본 체크아웃 경로를 지정한 다음, 리포지토리 액세스 방식과 리포지토리 루트 폴더 경로를 지정합니다. 리포지토리 내의 특정 하위 폴더를 지정할 수도 있습니다.

필요한 설정을 모두 지정한 후 OK을 클릭하면 연결이 설정되고 리포지토리를 사용할 준비가 됩니다.

기존 리포지토리에 연결 – 이 경우 하드 드라이브의 로컬 리포지토리.기존 리포지토리에 연결 – 이 경우 하드 드라이브의 로컬 리포지토리.

기존 리포지토리에 연결 – 이 경우 서버 설치 내부의 리포지토리.기존 리포지토리에 연결 – 이 경우 서버 설치 내부의 리포지토리.

리포지토리 속성 편집

Design Repository의 속성은 언제든지 편집할 수 있습니다. 예를 들어 Altium Designer 내에서 표시되고 참조되는 리포지토리 이름을 변경하고 싶을 수 있습니다. 또는 다른 리포지토리에 연결하도록 연결 정보를 편집하고 싶을 수도 있습니다. 이를 위해 리포지토리 목록(Preferences dialog의 Data Management – Design Repositories 페이지)에서 해당 리포지토리 항목을 선택한 다음 버튼을 클릭합니다. SVN Design Repository dialog(또는 Git Repository dialog)가 나타나며, 여기서 필요에 따라 변경할 수 있습니다.

리포지토리 연결 해제

Design Repository에서 연결을 해제하려면 목록에서 해당 항목을 선택하고 버튼을 클릭합니다. 그러면 연결된 Design Repositories 목록에서 해당 리포지토리가 제거됩니다. 리포지토리 자체가 삭제되는 것은 아니며, 단지 시스템에서 연결이 끊어진 상태가 됩니다. 리포지토리를 다시 사용하려면 다시 연결하십시오.

목록에서 완전히 제거하지 않고 Design Repository 사용을 비활성화하려면, 해당 Activated 옵션을 비활성화하십시오.
관리형 콘텐츠 서버에 로그인하여 추가된 Design Repository를 제거한 경우에도 다시 연결할 수 있습니다. 또는 더 빠른 방법으로 Preferences dialog를 닫은 다음 서버에서 로그아웃했다가 다시 로그인하십시오. 이후 Preferences dialog의 Data Management – Design Repositories 페이지에 다시 접근하면 해당 리포지토리(들)가 다시 표시됩니다.

SVN Design Repositories 사용

SVN Design Repository는 한 번 정의해 두면 연결형(connected) 구조 덕분에 해당 저장소에 프로젝트를 추가하거나, 해당 저장소에 있는 기존 프로젝트를 여는 작업이 훨씬 간단해집니다. 저장소를 선택하기 위해 경로를 외우거나 찾아보기 메뉴에서 단계별로 내려갈 필요 없이, 현재 연결되어 있고 사용하도록 활성화된 모든 Design Repository의 편리한 목록에서 필요한 저장소를 선택하기만 하면 됩니다.

디자인 저장소에 처음 접근할 때는 로그인 자격 증명을 제공해야 합니다. 예를 들어 외부 VCS 서버(예: VisualSVN Server에 위치한 디자인 저장소)의 로그인 자격 증명 등이 이에 해당합니다.

일반적으로 프로젝트 파일은 Projects 또는 Storage Manager 패널의 명령을 사용해 버전 관리 저장소에 추가할 수 있으며, 이 과정은 파일을 추가 대상으로 등록한 다음 해당 파일을 VCS에 커밋하는 단계로 이루어집니다.

아래에 표시된 프로세스는 바로 사용하기 편리한 Projects 패널을 사용하지만, Storage Manager 패널이 더 많은 VCS 세부 정보와 옵션을 제공한다는 점도 알아두면 좋습니다.

로컬 프로젝트를 SVN Design Repository에 추가하기

아직 버전 관리 중이 아닌 로컬 디자인 프로젝트를 Design Repository에 추가하는 과정은 간단합니다. 프로젝트를 연 상태에서 Projects panel 또는 Storage Manager panel 또는 Project » History & Version Control 메인 메뉴에서 Add Project Folder To Version Control 명령을 사용합니다. 그러면 Add to Version Control 대화상자가 나타납니다. 이 대화상자 상단의 필드에는 연결되어 있고 활성화된 모든 Design Repository의 드롭다운 목록이 표시됩니다. 필요한 저장소를 선택합니다.

다른 SVN 저장소에 연결하거나 새로 만들어야 하는 경우, 버튼을 클릭하면 Preferences 대화상자의 Data Management – Design Repositories page로 빠르게 이동할 수 있습니다.
Altium Designer가 Altium 365 Workspace에 연결되어 있으면, Add to Version Control 대화상자에서 선택한 프로젝트를 온라인에서 사용할 수 있도록(즉, Workspace의 기본 VCS에 추가하도록) 제안합니다. 이 SVN 저장소에 프로젝트를 추가하려면 대화상자 상단 드롭다운 메뉴에서 연결된 SVN 저장소를 선택해 진행하십시오. 다른 SVN 저장소에 연결하거나 새로 만들어야 하는 경우, 대화상자 왼쪽 하단의 Setup custom repository 컨트롤을 클릭하여 Preferences 대화상자의 Data Management – Design Repositories page로 이동할 수 있습니다.

선택한 Design Repository의 폴더 계층 구조가 대화상자의 Folders 영역에 표시됩니다. 디자인 파일을 추가할 기존 폴더를 지정하거나,  버튼을 사용해 새 폴더를 만들 수 있습니다. 후자의 경우, 저장소 폴더 계층에서 지정한 위치에 폴더가 추가되며, 프로젝트가 들어 있는 원본 폴더 이름을 따서 폴더명이 지정됩니다.

로컬 디자인 프로젝트를 로컬 디자인 저장소에 추가합니다.
로컬 디자인 프로젝트를 로컬 디자인 저장소에 추가합니다.

을(를) 클릭하여 설정을 확인합니다. 그러면 대화상자에 원본 폴더에서 파생된 파일 항목이 채워지고, 프로젝트를 구성하는 파일이 선택됩니다. 필요하면 체크박스를 사용해 포함할 파일을 활성화/비활성화하십시오. 을(를) 선택하여 선택 사항을 확인합니다. 이제 Projects panel의 파일 항목 상태가 Scheduled for addition ()로 표시되는 점에 유의하십시오. 이는 VCS가 해당 파일을 버전 관리에 추가하도록 등록했으며, VCS 저장소에 체크인(커밋)할 준비가 되었음을 의미합니다.

추가 예정으로 예약된 파일추가 예정으로 예약된 파일

프로젝트 커밋하기

Scheduled for addition () 상태인 파일은 커밋 시 버전 관리 및 디자인 저장소에 추가됩니다. 이를 수행하려면 Projects 패널의 우클릭 메뉴에서 Version Control » Commit Whole Project 명령을 선택하여 프로세스를 시작합니다.

Commit Whole Project 명령Commit Whole Project 명령

이후 나타나는 Add to Version Control 대화상자에서는 버전 관리에 포함할 개별 프로젝트 파일을 선택 해제(또는 추가 선택)할 수 있습니다. 또한 코멘트를 추가할 수 있으며, 이는 곧 생성될 VCS 리비전에 포함됩니다.

버전 관리에 포함되는 특정 파일의 포함 설정버전 관리에 포함되는 특정 파일의 포함 설정

그런 다음 프로젝트와 그 구성 디자인 문서가 VCS 저장소로 복사되어 새 리비전으로 등록되며, Altium Designer 패널에서 파일 상태는 No Modification ()로 변경됩니다.

프로젝트가 버전 관리에 추가된 후에는 단일 Add to Version ControlCommit 명령을 사용하여 개별 파일을 추가하고 커밋할 수 있습니다. 마찬가지로 Remove from Version Control 명령을 사용하면 특정 파일을 버전 관리에서 개별적으로 제거할 수 있으며(로컬 작업 프로젝트에는 유지됨), 파일만 버전 관리 대상에서 제외됩니다.

새 버전 관리 프로젝트 만들기

새 버전 관리 프로젝트를 만들 때 Create Project dialogRepository field에는 연결되어 있고 활성화된 모든 Design Repository의 드롭다운 목록이 표시됩니다. 필요한 저장소를 선택합니다.

새 버전 관리 디자인 프로젝트 만들기 – 정의된 모든 Design Repository를 사용할 수 있습니다.
새 버전 관리 디자인 프로젝트 만들기 – 정의된 모든 Design Repository를 사용할 수 있습니다.

Create Project 대화상자의 Local Storage 옵션은 프로젝트의 작업 사본(working copy)이 저장되는 위치를 정의합니다. 이 파일들이 Altium Designer에서 열고 편집되는 대상이며, 편집이 완료되면 새 리비전으로 저장소에 다시 커밋(체크인)됩니다.

SVN Design Repository에서 버전 관리 프로젝트 열기

Design Repository에 있는 버전 관리 디자인 프로젝트를 여는 것도 마찬가지로 간단합니다. File » Checkout 명령을 사용하면 Check Out 대화상자가 나타납니다. Check out from field를 사용해 연결되어 있고 활성화된, 사용 가능한 모든 디자인 저장소의 드롭다운 목록에서 필요한 저장소를 선택합니다.

다른 저장소에 연결해야 하는 경우, 버튼을 클릭하여 Preferences 대화상자의 Data Management – Design Repositories page로 빠르게 이동할 수 있습니다.

선택한 Design Repository의 폴더 계층 구조가 대화상자의 Folders 영역에 표시됩니다. 이 영역을 사용해 저장소에서 체크아웃할 정확한 폴더를 지정합니다.

Check out to field를 사용해 지정한 폴더의 내용을 체크아웃할 위치를 지정합니다. 이 위치가 로컬 샌드박스 영역입니다.

지정한 Design Repository에서 기존 버전 관리 디자인 프로젝트를 손쉽게 체크아웃하세요!
지정한 Design Repository에서 기존 버전 관리 디자인 프로젝트를 손쉽게 체크아웃하세요!

SVN 프로젝트 파일 잠그기

SVN VCS는 파일 잠금(file locking)을 지원하므로, 잠긴 파일에 대해서는 다른 사용자가 변경 사항을 커밋할 수 없습니다. SVN VCS에서 프로젝트 디자인 파일을 잠그려면 Projects 패널에서 해당 파일을 우클릭하고 History & Version Control » Lock 명령을 선택합니다(또는 Storage Manager panel에서 파일을 우클릭한 메뉴에서 Lock 명령을 선택). 잠긴 파일은 ProjectsStorage Manager 패널에서 아이콘으로 표시됩니다.

해당 파일은 본인 또는 다른 사용자가 잠근 상태입니다. 본인이 잠근 경우, 다른 사용자는(강제로 잠금 해제하지 않는 한) 저장소의 새 리비전으로 해당 파일을 업데이트할 수 없습니다. 잠긴 파일을 표시하는 데는 단일 아이콘 유형이 사용되지만, 함께 표시되는 텍스트는 누가 파일을 잠갔는지(Locked by me 또는 Locked by someone else)를 나타냅니다. VCS 텍스트는 또한 결합된 상태를 표시하기도 합니다(예: Modified and locked by me).

파일이 최신 상태가 아니면 잠글 수 없습니다.

현재 잠겨 있는 문서를 잠금 해제하려면 Projects 패널에서 해당 문서를 우클릭하고 History & Version Control » Unlock 명령을 선택합니다(또는 Storage Manager panel에서 파일을 우클릭한 메뉴에서 Unlock 명령을 선택). 잠금 해제 후에는 어떤 사용자든 수정 사항이 포함된 문서를 버전 관리 저장소에 커밋할 수 있습니다.

문서 정리(Cleanup)

프로젝트 파일의 로컬 작업 사본에 변경을 적용하기 전에 SVN은 변경을 안전하게 수행하기 위해 필요한 작업들의 일종의 ‘할 일(to-do) 목록’을 만듭니다. 이러한 작업을 수행하는 동안에는 작업 중인 로컬 작업 사본의 관련 부분에 잠금을 걸어 둡니다. 이는 변경이 진행되는 중에 다른 Subversion 클라이언트가 작업 사본에 접근하는 것을 방지합니다. 작업이 끝나면 이 잠금은 해제되고, Subversion은 자체 ‘할 일 목록’을 정리합니다. 하지만 Subversion 작업이 중단되면(예: 프로세스가 중단되거나 컴퓨터가 크래시하는 경우) 이 ‘할 일 목록’이 디스크에 남게 됩니다. 이를 통해 SVN은 나중에 해당 목록으로 돌아와 미완료 작업을 마무리하고, 작업 사본을 일관된 상태로 되돌릴 수 있습니다.

프로젝트 문서 항목을 우클릭해 History & Version Control » Cleanup 을(를) 선택하거나, 메인 메뉴 검색에서 Project » Version Control » Cleanup 명령을 선택해 실행할 수 있는 cleanup 명령은 작업 사본을 검사하여 남아 있는 ‘할 일’ 항목을 실행합니다. 이 과정에서 작업 사본 잠금을 제거하며, 최종적으로 프로젝트 문서의 작업 사본을 일관된 상태로 되돌립니다.

Subversion이 작업 사본의 일부가 잠겨 있다고 알려오면, 이 명령을 실행해 문제를 해결해 보십시오.
AI-LocalizedAI로 번역됨
만약 문제가 있으시다면, 텍스트/이미지를 선택하신 상태에서 Ctrl + Enter를 누르셔서 저희에게 피드백을 보내주세요.
기능 제공 여부

사용 가능한 기능은 보유하고 계시는 Altium 솔루션에 따라 달라집니다. 해당 솔루션은 Altium Develop, Altium Agile의 에디션(Agile Teams 또는 Agile Enterprise), 또는 활성기간 내의 Altium Designer 중 하나입니다.

안내된 기능이 고객님의 소프트웨어에서 보이지 않는 경우, 보다 자세한 내용을 위해 Altium 영업팀 에 문의해 주세요.

구버전 문서

Altium Designer 문서는 더 이상 버전별로 제공되지 않습니다. 이전 버전의 Altium Designer 문서가 필요하신 경우, Other Installers 페이지의 Legacy Documentation 섹션을 방문해 주세요.

콘텐츠