이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

프로젝트를 소스 컨트롤과 함께 사용하기

프로젝트를 사용하여 소스 컨트롤 상태에 있는 파일에 대해 작업을 할 수 있습니다. 소스 컨트롤은 파일을 리포지토리에 저장하므로, 소스 컨트롤을 사용하면 작업할 파일을 리포지토리에서 체크아웃한 후 변경 사항을 보존하기 위해 다시 체크인하고 지금까지 체크인한 파일들의 각 버전 내역을 볼 수 있습니다. MathWorks 제품에서 소스 컨트롤을 사용하는 방법에 대한 자세한 내용은 MathWorks 소스 컨트롤 연동 정보 항목을 참조하십시오.

프로젝트는 두 개의 소스 컨트롤 시스템 즉, Git™ 및 Subversion®(SVN)과 연동됩니다.

프로젝트를 소스 컨트롤과 함께 설정하려면 다음 워크플로 중 하나를 사용하십시오.

  • 기존 리포지토리에서 새 프로젝트를 만듭니다.

  • 기존 프로젝트를 소스 컨트롤에 추가합니다.

  • 이미 소스 컨트롤 상태에 있는 폴더에서 새 프로젝트를 만듭니다.

그러면 프로젝트가 소스 컨트롤 상태에 있을 때 MATLAB®에서 파일 체크인/체크아웃, 검사 실행, 변경 사항 커밋, 되돌리기 등 다양한 작업을 수행할 수 있습니다.

소스 컨트롤 설정하기

프로젝트를 소스 컨트롤과 함께 설정하는 데에는 세 가지 방법이 있습니다.

기존 리포지토리에서 새 프로젝트 만들기

소스 컨트롤에서 파일을 가져와 기존 리포지토리에서 프로젝트의 새 로컬 복사본을 만드십시오. Git 리포지토리를 복제하거나 SVN 리포지토리에서 파일을 체크아웃하거나 다른 소스 컨트롤 연동을 사용할 수 있습니다.

기존 리포지토리에서 새 프로젝트를 만들려면 다음을 수행하십시오.

  1. 홈(Home) 탭에서 새로 만들기(New) > 프로젝트(Project) > Git에서(From Git) 또는 새로 만들기(New) > 프로젝트(Project) > SVN에서(From SVN)를 클릭합니다. "소스 컨트롤에서 새 프로젝트" 대화 상자가 열립니다.

  2. 리포지토리 위치를 아는 경우에는 위치를 리포지토리 경로(Repository Path) 필드에 붙여 넣습니다.

    그렇지 않은 경우, 리포지토리 경로를 찾고 경로의 유효성을 검사하여 파일을 가져오려면 변경(Change)을 클릭하십시오.

    1. 대화 상자에서 리포지토리(Repository) 필드에 URL을 입력 또는 붙여 넣거나 최근 리포지토리 목록에서 선택하거나 폴더에서 URL 생성(Generate URL from folder) 버튼 을 클릭하여 리포지토리 URL을 지정합니다.

    2. 유효성 검사(Validate)를 클릭하여 리포지토리 경로를 확인합니다. 경로가 유효하지 않은 경우 소스 컨트롤 리포지토리 브라우저와 비교하여 URL을 확인합니다.

    3. 리포지토리에 대한 인증 대화 상자가 표시되면 로그인 정보를 입력하여 계속합니다.

    4. 필요한 경우, 리포지토리 트리에서 더 깊숙이 있는 폴더를 선택합니다. SVN을 사용하는 경우 trunk에서 체크아웃하거나 tags 아래의 브랜치 폴더에서 체크아웃할 수 있습니다.

    5. 검색하려는 URL 경로를 지정했으면 확인(OK)을 클릭합니다. 대화 상자가 닫히고 "소스 컨트롤에서 새 프로젝트" 대화 상자로 돌아가게 됩니다.

  3. 샌드박스(Sandbox) 필드에서 새 프로젝트용으로 가져온 파일을 배치할 작업 폴더를 선택합니다. SVN을 사용하는 경우 최상의 결과를 위해 로컬 폴더를 사용하십시오. 네트워크 폴더를 사용하면 속도가 느립니다.

  4. 가져오기(Import)를 클릭합니다.

    리포지토리에 이미 프로젝트가 있는 경우 소스 컨트롤 툴이 사용자가 선택한 샌드박스 폴더로 파일 가져오기를 완료하면 프로젝트를 바로 사용할 수 있습니다.

    샌드박스에 아직 프로젝트가 없는 경우 폴더에 프로젝트를 만들지 여부를 묻는 대화 상자가 표시됩니다. 프로젝트를 만들려면 프로젝트 이름을 지정하고 확인(OK)을 클릭하십시오. 새 프로젝트를 설정하는 데 도움이 되는 시작 화면이 표시됩니다. 프로젝트를 설정하는 방법에 대한 자세한 내용은 프로젝트 설정하기 항목을 참조하십시오.

대형 Git 리포지토리를 복제할 때 OutOfMemoryError: Java heap space 같은 오류가 발생하는 경우 다음과 같이 MATLAB 기본 설정을 편집하여 힙 크기를 늘리십시오.

  1. 홈(Home) 탭의 환경(Environment) 섹션에서 기본 설정(Preferences)을 클릭합니다.

  2. MATLAB > 일반(General) > Java 힙 메모리(Java Heap Memory)를 선택합니다.

  3. 슬라이더를 움직여 힙 크기를 늘린 후 확인(OK)을 클릭합니다.

  4. MATLAB을 다시 시작합니다.

소스 컨트롤에 기존 프로젝트 추가하기

기존 프로젝트가 있는 경우 이를 Git 또는 SVN 소스 컨트롤에 추가할 수 있습니다.

소스 컨트롤에 프로젝트를 추가하려면 다음을 수행하십시오.

  1. 프로젝트(Project) 탭의 소스 컨트롤(Source Control) 섹션에서 소스 컨트롤 사용(Use Source Control)을 클릭합니다. 소스 컨트롤 정보 대화 상자가 열립니다.

  2. 소스 컨트롤에 프로젝트 추가(Add project to source control) 버튼을 클릭합니다. 소스 컨트롤에 추가 대화 상자가 열립니다.

  3. 소스 컨트롤 툴(Source control tool) 목록에서 리포지토리에 적합한 툴을 선택합니다.

  4. 원격 리포지토리를 사용 중인 경우 변경 버튼을 클릭하여 기존 리포지토리를 선택하거나 새 리포지토리를 만듭니다.

    • 기존 리포지토리를 지정하려면 폴더에서 URL 생성(Generate URL from folder) 버튼을 클릭하여 리포지토리를 검색하거나 리포지토리(Repository) 필드에 URL을 붙여 넣거나 목록에서 최근 리포지토리를 선택하십시오.

    • 새 리포지토리를 만들려면 리포지토리 만들기(Create a repository) 버튼을 클릭하십시오. 새 리포지토리를 만드는 방법에 대한 자세한 내용은 새 리포지토리 생성하기 항목을 참조하십시오.

    유효성 검사(Validate)를 클릭하여 선택한 리포지토리에 대한 경로를 확인한 다음 확인(OK)을 클릭합니다.

  5. 소스 컨트롤에 프로젝트를 추가하는 것을 끝내려면 변환(Convert)을 클릭합니다.

    프로젝트에서 무결성 검사를 실행합니다.

  6. 무결성 검사 실행이 끝나면 프로젝트 열기(Open Project)를 클릭하여 프로젝트로 돌아갑니다.

    프로젝트에 현재 소스 컨트롤 툴과 리포지토리 위치에 대한 세부 정보가 표시됩니다.

  7. 새 리포지토리를 만든 경우 파일(File) > 수정됨(Modified) 보기를 선택한 다음 커밋(Commit)을 클릭하여 파일의 첫 번째 버전을 새 리포지토리에 커밋합니다. 원하는 경우 대화 상자에서 주석을 입력하고 제출(Submit)을 클릭합니다.

Git으로 브랜치를 병합하려는 경우 추가 설정 단계를 따라야 합니다. 자세한 내용은 Git 소스 컨트롤 설정하기 항목을 참조하십시오.

내장 버전이 아닌 다른 버전의 SVN을 사용하려면 SVN 소스 컨트롤 설정하기 항목을 참조하십시오.

이미 소스 컨트롤 상태에 있는 폴더에서 새 프로젝트 만들기

이미 소스 컨트롤 상태에 있는 폴더에서 새 프로젝트를 만드는 경우 MATLAB은 소스 컨트롤에 새 프로젝트를 자동으로 추가할 수 있습니다. 프로젝트를 만든 후 검색(Retrieve) 버튼을 클릭하십시오. 폴더에서 프로젝트를 만드는 방법에 대한 자세한 내용은 프로젝트 만들기 항목을 참조하십시오.

소스 컨트롤 작업 수행하기

버전 가져오기 및 프로젝트 파일 체크아웃하기

다음 표에는 수정된 프로젝트 파일을 확인하는 방법, 수정본을 업데이트하는 방법, 파일 자물쇠를 가져오고 관리하는 방법, 프로젝트 파일에 태그를 지정하는 방법이 나와 있습니다.

동작절차
프로젝트 파일 상태 새로 고치기.

로컬에서 수정한 파일을 확인하려면 프로젝트(Project) 탭의 소스 컨트롤(Source Control) 섹션에서 새로 고침(Refresh)을 클릭하십시오. 새로 고침을 수행하면 로컬 샌드박스 상태가 쿼리되고 MATLAB 외부에 있는 또 다른 툴에서 발생한 변경 사항이 확인됩니다.

자세한 내용은 SVN 파일의 상태와 수정본 업데이트하기 항목 또는 Git 파일의 상태와 수정본 업데이트하기 항목을 참조하십시오.

프로젝트 파일의 수정 사항 확인하기.

리포지토리에 새 버전의 프로젝트가 있는지 알아보려면 파일(File) 보기에서 파일을 마우스 오른쪽 버튼으로 클릭한 다음 소스 컨트롤(Source Control) > 수정 사항 확인(Check for Modifications)을 선택하십시오.

SVN을 사용할 경우 이 옵션을 선택하면 외부 수정 사항을 확인하기 위해 리포지토리에 연결됩니다. 그러면 프로젝트는 로컬 파일의 개정 번호와 리포지토리 버전의 개정 번호를 비교합니다. 리포지토리의 개정 번호가 로컬 샌드박스 폴더의 개정 번호보다 큰 경우 프로젝트는 로컬 파일의 개정 번호 옆에 (not latest)를 표시합니다.

모든 프로젝트 파일 업데이트하기.

SVN을 사용할 때 모든 프로젝트 파일의 최신 변경 사항을 가져오려면 프로젝트(Project) 탭으로 이동한 다음 소스 컨트롤(Source Control) 섹션에서 업데이트(Update)를 클릭하십시오. 그러면 프로젝트는 디스크에서 변경된 모든 파일을 나열하는 대화 상자를 표시합니다. 이 동작은 프로젝트 기본 설정 소스 컨트롤 업데이트 시 변경 내용 표시(Show changes on source control update)를 사용하여 조정할 수 있습니다. 자세한 내용은 SVN 파일의 상태와 수정본 업데이트하기 항목을 참조하십시오.

Git을 사용할 때 소스 컨트롤 리포지토리에서 모든 프로젝트 파일의 최신 변경 사항을 가져와 현재 브랜치에 병합하려면, 프로젝트(Project) 탭으로 이동한 다음 소스 컨트롤(Source Control) 섹션에서 끌어오기(Pull)을 클릭하십시오. 변경 사항을 수동으로 가져와 병합하려면 프로젝트(Project) 탭의 소스 컨트롤(Source Control) 섹션에서 가져오기(Fetch)를 클릭하십시오. 그러면 로컬 리포지토리의 모든 원본 브랜치가 업데이트됩니다. 가져오기(Fetch)를 클릭할 때 샌드박스 파일은 변경되지 않습니다. 다른 사용자의 변경 사항을 보려면 원본에서의 변경 사항을 사용자의 로컬 브랜치에 병합하십시오. 자세한 내용은 Git을 사용하여 파일 끌어오기(Pull), 밀어넣기(Push), 가져오기(Fetch) 항목을 참조하십시오.

선택한 프로젝트 파일의 수정본 업데이트하기.

선택한 파일 집합을 업데이트하려면 파일(File) 보기에서 파일을 마우스 오른쪽 버튼으로 클릭한 다음 소스 컨트롤(Source Control) > 업데이트(Update) 명령(사용 중인 소스 컨트롤 시스템의 업데이트 명령)을 선택하십시오. 예를 들어, SVN을 사용 중인 경우 소스 컨트롤(Source Control) > SVN에서 업데이트(Update from SVN)를 선택하여, 선택한 파일의 새로운 로컬 사본을 리포지토리에서 가져옵니다.

SVN 파일 자물쇠 가져오기.

SVN 파일 자물쇠를 가져오려면 파일(File) 보기에서 체크아웃할 파일을 선택하십시오. 선택한 파일을 마우스 오른쪽 버튼으로 클릭하고 소스 컨트롤(Source Control) > 파일 자물쇠 가져오기(Get File Lock)를 선택합니다. SVN 소스 컨트롤 열에 자물쇠 기호가 표시됩니다. 다른 사용자는 자신의 샌드박스에서 자물쇠 기호를 보지 못하지만, 어느 사용자가 자물쇠를 가지고 있는 경우 그 파일의 자물쇠를 가져오거나 변경 사항을 체크인할 수 없습니다. 자물쇠를 보거나 해제하려면 프로젝트(Project) 탭에서 자물쇠(Lock)를 클릭하십시오.

파일 자물쇠 가져오기(Get File Lock)는 SVN에서만 사용 가능합니다. Git은 자물쇠를 사용하지 않습니다.

SVN 리포지토리 자물쇠 관리하기.

리포지토리의 전역 SVN 자물쇠를 관리하려면 프로젝트(Project) 탭의 소스 컨트롤(Source Control) 섹션에서 자물쇠(Lock)를 클릭하십시오. 자세한 내용은 SVN 파일 자물쇠 가져오기 항목을 참조하십시오.

프로젝트 파일 버전에 태그 지정하기.

모든 프로젝트 파일의 특정 수정본을 식별하려면 프로젝트(Project) 탭의 소스 컨트롤(Source Control) 섹션에서 태그(Tag)를 클릭하십시오. 태그 텍스트를 지정하고 확인(OK)을 클릭합니다. 태그가 모든 프로젝트 파일에 추가됩니다. 리포지토리에 tags 폴더가 없는 경우에는 오류가 나타납니다. 자세한 내용은 SVN 소스 컨트롤 설정하기 항목을 참조하십시오.

프로젝트 파일의 변경 내용 검토하기

파일(File) > 수정됨(Modified) 보기에서 프로젝트 파일의 변경 내용을 검토할 수 있습니다. 다음 표에는 수정된 프로젝트 파일의 목록을 확인하는 방법, 파일 내역을 검토하는 방법, 두 파일의 수정본을 비교하는 방법이 나와 있습니다.

동작절차
수정된 프로젝트 파일 확인하기.

파일(File) 보기에서 수정됨(파일 개수)(Modified (number of files)) 탭을 선택합니다. 파일(File) > 수정됨(Modified) 보기는 소스 컨트롤을 프로젝트와 함께 사용하는 경우에만 표시됩니다.

폴더를 확장하지 않고 파일을 보려면 목록(List) 레이아웃을 사용하십시오.

소스 컨트롤 요약 상태를 통해 수정된 파일 또는 충돌이 난 폴더의 내용을 식별할 수 있습니다. 파일(File) 보기에서는, 접혀 있던 소스 컨트롤 상태가 폴더에 표시됩니다. 따라서 파일의 변경 사항 특히, 충돌이 난 파일의 변경 사항을 쉽게 찾을 수 있습니다. 폴더의 소스 컨트롤 상태(예: Git 또는 SVN 열)에 마우스를 올려놓으면 수정되거나 충돌이 나거나 추가 또는 삭제된 파일 개수를 보여주는 툴팁을 볼 수 있습니다.

수정된 파일 목록 업데이트하기.

수정된 파일 목록을 업데이트하려면 프로젝트(Project) 탭의 소스 컨트롤(Source Control) 섹션에서 새로 고침(Refresh)을 클릭하십시오.

수정본 내역 보기.

파일(File) 보기에서 파일을 마우스 오른쪽 버튼으로 클릭한 다음 소스 컨트롤(Source Control) > 수정본 표시(Show Revisions)를 선택합니다.

커밋된 SVN 변경 세트에서 파일을 검색하고 변경하려면 프로젝트(Project) 탭의 소스 컨트롤(Source Control) 섹션에서 로그 표시(Show Log)를 선택하십시오. 파일 수정본 대화 상자에서 수정본을 선택하여 수정된 파일의 목록을 봅니다. 하단 목록에서 파일을 마우스 오른쪽 버튼으로 클릭하여 변경 내용을 보거나 수정본을 저장합니다.

수정본 비교하기.

파일(File) 보기에서 파일을 마우스 오른쪽 버튼으로 클릭한 다음 비교(Compare) > 선조와 비교(Compare to Ancestor)를 선택하여 로컬 리포지토리와 비교(Git의 경우)하거나 샌드박스에서 마지막으로 체크아웃한 버전과 비교(SVN의 경우)하는 작업을 실행합니다. 비교 툴에 리포트가 표시됩니다.

파일의 다른 수정본을 비교하려면 비교(Compare) > 수정본과 비교(Compare to Revision)를 선택하십시오.

비교 리포트를 확인하려면 비교할 수정본을 선택하고 선택한 파일 비교(Compare Selected)를 클릭하십시오. 또는 수정본을 하나 선택하고 로컬 파일과 비교(Compare to Local)를 클릭합니다. 자세한 내용은 파일과 폴더 비교하기 및 파일 병합하기 항목을 참조하십시오.

프로젝트 정의 파일.  resources/project 폴더의 파일은 변경 사항으로 인해 생성된 프로젝트 정의 파일입니다. 프로젝트 정의 파일을 사용하면 파일을 체크아웃하지 않고도 파일에 메타데이터를 추가할 수 있습니다. 예를 들어, 바로 가기를 만들거나 레이블을 추가하거나 프로젝트 설명을 추가하는 방법으로 메타데이터를 추가할 수 있습니다. 또한 프로젝트 정의 파일에 따라 프로젝트에 추가되는 파일이 정의됩니다.

프로젝트를 변경하면(예를 들어 프로젝트의 바로 가기, 레이블, 범주 또는 파일을 변경하면) resources/project 폴더에 변경이 발생합니다. 프로젝트 정의 파일은 프로젝트 정의를 XML 파일(이 형식은 변경될 수 있음)로 저장합니다.

소스 컨트롤 툴에서 병합이 필요한 경우가 아니면 프로젝트 정의 파일을 직접 확인할 필요가 없습니다. 소스 컨트롤 시스템에 커밋되는 모든 파일에 대해 알고 싶을 때 프로젝트 정의 파일을 표시합니다.

프로젝트를 만들 때 사용한 프로젝트 정의 파일의 형식을 변경하려면 export를 참조하십시오.

프로젝트 검사 실행하기

프로젝트에 대해 검사를 실행하려면 프로젝트(Project) 탭으로 이동한 다음 검사 실행(Run Checks) > 프로젝트 검사(Check Project)를 클릭하십시오. 그러면 프로젝트 무결성에 문제가 있는지(예: 누락된 파일, 저장되지 않은 파일 또는 소스 컨트롤 상태에 있지 않은 파일) 확인하기 위한 검사가 실행됩니다. 대화 상자에 결과가 보고됩니다. 세부 정보를 클릭하고 표시되는 메시지를 따라 문제를 해결할 수 있습니다.

필요한 파일을 확인하려면 종속성 분석(Dependency Analysis)을 클릭하여 수정된 파일의 종속성을 분석하십시오. 프로젝트 구조를 분석하려면 종속성 툴을 사용하십시오.

검사를 통해 해결할 수 있는 문제에 대한 자세한 내용은 프로젝트에서 파생 파일 사용하기 항목과 프로젝트 종속성 분석하기 항목을 참조하십시오.

수정된 프로젝트 파일 커밋하기

변경 사항 검토와 프로젝트 검사 실행이 끝나면 수정된 프로젝트 파일을 소스 컨트롤에 커밋할 수 있습니다. 다음 표에는 수정된 프로젝트 파일을 커밋하는 방법이 나와 있습니다.

동작절차
수정된 모든 파일을 소스 컨트롤에 커밋하기.

파일(File) 보기에서 수정됨(파일 개수)(Modified (number of files)) 탭을 선택합니다. 프로젝트(Project) 탭의 소스 컨트롤(Source Control) 섹션에서 커밋(Commit)을 클릭합니다. 대화 상자에 주석을 입력하고 제출(Submit)을 클릭합니다. Git 소스 컨트롤을 사용 중인 경우에는 로컬 리포지토리에 커밋됩니다. SVN 소스 컨트롤을 사용 중인 경우에는 변경 내용이 리포지토리에 커밋됩니다.

리포지토리가 이동해 커밋할 수 없는 경우에는 메시지가 나타납니다. 파일을 커밋하려면 먼저 파일의 수정본을 현재 HEAD 수정본으로 업데이트해야 합니다. Git 소스 컨트롤을 사용 중인 경우 끌어오기(Pull)을 클릭합니다. SVN 소스 컨트롤을 사용 중인 경우에는 업데이트(Update)를 클릭합니다. 커밋하기 전에 남아 있는 충돌을 해결하도록 합니다.

선택한 파일을 소스 컨트롤에 커밋하기.

파일(File) 보기에서 파일을 선택하고 마우스 오른쪽 버튼으로 클릭한 다음 소스 컨트롤(Source Control) > 커밋(Commit)을 선택합니다.

파일을 개별적으로 커밋하면 파일을 추적하는 관련 프로젝트 정의 파일이 커밋되지 않을 위험이 있습니다. 이를 방지하기 위해 수정된 모든 파일을 커밋하십시오.

Git을 사용하여 프로젝트 파일 밀어넣기.

원격 리포지토리에 로컬 커밋을 보내려면 프로젝트(Project) 탭의 소스 컨트롤(Source Control) 섹션에서 밀어넣기(Push)를 클릭하십시오. 리포지토리가 이동해 변경 사항을 직접 밀어넣을 수 없는 경우 메시지가 나타납니다. 원격 리포지토리에서 모든 변경 사항을 가져오려면 가져오기(Fetch)를 클릭하십시오. 브랜치를 병합하고 충돌을 해결하십시오. 그러면 변경 사항을 밀어넣을 수 있습니다. 자세한 내용은 Git을 사용하여 파일 끌어오기(Pull), 밀어넣기(Push), 가져오기(Fetch) 항목을 참조하십시오.

Git을 사용하여 빈 프로젝트 폴더 밀어넣기.

빈 폴더를 Git 소스 컨트롤에 추가할 수 없으므로, 밀어넣기(Push)를 클릭한 후에 빈 폴더를 복제할 수 없습니다. 프로젝트에서는 빈 폴더를 만들 수 있지만 변경 사항을 밀어넣은 후 새 샌드박스를 동기화하면 새 샌드박스에 빈 폴더가 나타나지 않습니다. 대신 빈 폴더를 자동으로 생성하는 프로젝트 검사(Check Project)를 실행합니다.

또는 다른 사용자가 동기화할 수 있도록 빈 폴더를 리포지토리에 밀어넣으려면 폴더에 gitignore 파일을 만든 다음 변경 사항을 밀어넣습니다.

Git 스태시 만들기.

Git 스태시는 커밋되지 않은 변경 사항을 나중에 사용할 수 있도록 저장합니다. 스태시를 만들려면 프로젝트(Project) 탭의 소스 컨트롤(Source Control) 섹션에서 스태시(Stashes)를 클릭하십시오. 스태시 대화 상자가 열립니다. 새 스태시(New Stash)를 클릭하여, 현재 수정된 파일을 포함하는 스태시를 만듭니다. 자세한 내용은 Git 스태시 사용하기 항목을 참조하십시오.

Git을 사용하여 브랜치 만들기.

브랜치를 만들려면 프로젝트(Project) 탭의 소스 컨트롤(Source Control) 섹션에서 브랜치(Branches)를 클릭하십시오. 브랜치 보기, 전환, 생성 및 병합을 수행할 수 있는 브랜치 대화 상자가 나타납니다.

새 브랜치의 소스를 선택합니다. 브랜치 브라우저 도식에서 노드를 클릭하거나 소스 텍스트 상자에 고유한 식별자를 입력합니다. 특정 커밋을 식별할 수 있도록 SHA1 해시의 태그, 브랜치 이름, 고유 접두사 중 하나를 입력할 수 있습니다(예: 73c637). 현재 브랜치의 헤드에서 브랜치를 만들도록 디폴트 값은 그대로 둡니다. 브랜치 이름(Branch name) 텍스트 상자에 이름을 입력하고 만들기(Create)를 클릭합니다.

Git을 사용하여 브랜치 전환, 비교, 저장, 병합하기.

브랜치를 전환, 비교, 저장, 병합하려면 프로젝트(Project) 탭의 소스 컨트롤(Source Control) 섹션에서 브랜치(Branches)를 클릭하십시오. 브랜치 보기, 전환, 생성 및 병합을 수행할 수 있는 브랜치 대화 상자가 나타납니다. 자세한 내용은 Git을 사용해 브랜치 만들고 병합하기 항목을 참조하십시오.

충돌 문제 해결하기.

두 명의 사용자가 다른 샌드박스나 다른 브랜치에서 동일한 파일을 변경하는 경우, 수정된 파일을 커밋하려고 하면 충돌 메시지가 나타납니다. 필요한 경우 충돌 마커를 추출하고, 충돌을 일으키는 차이점을 비교하고, 충돌을 해결합니다.

파일(File) > 수정됨(Modified) 보기에서 충돌이 난 파일을 찾습니다. 소스 컨트롤 요약 상태를 통해 충돌이 난 폴더의 내용을 식별합니다. 접혀 있던 소스 컨트롤 상태가 폴더에 표시됩니다. 따라서 파일의 변경 사항 특히, 충돌이 난 파일의 변경 사항을 쉽게 찾을 수 있습니다. 폴더의 소스 컨트롤 상태에 마우스를 올려놓으면 수정되거나 충돌이 나거나 추가 또는 삭제된 파일 개수를 표시하는 툴팁을 볼 수 있습니다.

폴더를 확장하지 않고 파일을 보려면 목록(List) 레이아웃을 사용하십시오.

소스 컨트롤 상태 열(Git 또는 SVN)에서 충돌을 나타내는 빨간색 경고 기호가 있는 파일이 있는지 확인합니다. 충돌이 난 파일을 마우스 오른쪽 버튼으로 클릭하고 충돌 보기(View Conflicts)를 선택하여 버전을 비교합니다. 충돌이 난 파일 간의 차이점을 보여주는 비교 리포트가 열립니다.

변경 사항을 해결하여 사용자의 샌드박스에서 버전을 커밋하려는 경우, 파일을 마우스 오른쪽 버튼으로 클릭하고 소스 컨트롤(Source Control) > 충돌을 해결 상태로 표시(Mark Conflict Resolved)를 선택합니다.

Git의 경우 Git 창에서 브랜치(Branches) 상태가 MERGING에서 SAFE로 바뀝니다.

변경 사항을 확인하려면 파일(File) > 수정됨(Modified) 보기를 선택하십시오.

변경 사항 되돌리기

다음 표에는 프로젝트 파일의 변경 사항을 되돌리는 방법이 나와 있습니다. 변경 사항을 되돌리는 방법에 대한 자세한 내용은 소스 컨트롤의 변경 사항 되돌리기 항목을 참조하십시오.

동작절차
로컬 변경 사항 되돌리기.

자물쇠를 반환하고 마지막 샌드박스 업데이트의 버전(즉, 마지막으로 리포지토리에서 동기화했거나 가져온 버전)으로 되돌리려면, 파일(File) 보기에서 되돌릴 파일을 마우스 오른쪽 버튼으로 클릭한 다음 소스 컨트롤(Source Control) > 로컬 변경 사항을 취소한 후 자물쇠 반환(Discard Local Changes and Release Locks)을 선택하십시오.

Git을 사용 중일 때 로컬 변경 사항을 취소하려면 소스 컨트롤(Source Control) > 로컬 변경 사항 되돌리기(Revert Local Changes)를 선택하십시오. 로컬 변경 사항을 모두 제거하려면 Git 창에서 브랜치(Branches)를 클릭한 후 HEAD로 되돌리기(Revert to Head)를 클릭하십시오.

지정한 수정본으로 파일 되돌리기.

지정한 수정본으로 파일을 되돌리려면 파일을 마우스 오른쪽 버튼으로 클릭한 다음 소스 컨트롤(Source Control) > SVN을(를) 사용하여 되돌리기(Revert using SVN) 또는 소스 컨트롤(Source Control) > Git을(를) 사용하여 되돌리기(Revert using Git)를 선택하십시오.

파일 되돌리기 대화 상자에서 어느 수정본으로 되돌릴지 선택합니다. 수정본을 선택하여 작성자, 날짜, 로그 메시지와 같은 변경 사항에 대한 정보를 확인합니다. 되돌리기(Revert)를 클릭합니다.

파일을 이전 수정본으로 되돌린 후에 변경하는 경우, 리포지토리 내역의 충돌을 해결할 때까지 파일을 커밋할 수 없습니다.

지정한 수정본으로 프로젝트 되돌리기.

지정한 수정본으로 프로젝트를 되돌리려면 프로젝트(Project) 탭의 소스 컨트롤(Source Control) 섹션에서 프로젝트 되돌리기(Revert Project)를 클릭하십시오. 파일 되돌리기 대화 상자에서 어느 수정본으로 되돌릴지 선택합니다.

목록에 있는 각 수정본이 수정된 파일의 변경 세트입니다. 수정본을 선택하여 작성자, 날짜, 로그 메시지와 같은 변경 사항에 대한 정보를 확인합니다.

선택한 수정본의 정보가 올바르다고 판단되면 되돌리기(Revert)를 클릭하십시오.

프로젝트에서 파생 파일 사용하기

일반적으로 파생된 파일과 임시 파일은 프로젝트에서 생략하거나 소스 컨트롤에서 제외시키는 것이 좋습니다. 파생된 파일 또는 임시 파일을 확인하려면 프로젝트(Project) 탭 또는 커밋 전 작업(Precommit Actions) 창에서 프로젝트 검사(Check Project)를 사용하십시오. 프로젝트에 resources 폴더를 추가한 경우 프로젝트 검사 결과는 프로젝트에서 이 폴더를 제거하고 수정할 것을 권고합니다.

또한 파생된 파일은 문제를 야기할 수 있기 때문에 소스 컨트롤에서도 제외시키는 것이 좋습니다. 이러한 파일에는 .mex 파일, resources 폴더의 내용 또는 기타 코드 생성 폴더가 포함됩니다. 예를 들면 다음과 같습니다.

  • 파일을 잠글 수 있는 소스 컨트롤 시스템을 사용할 경우 충돌이 발생할 수 있습니다. resources가 소스 컨트롤 상태에 있을 때 코드를 생성하면 resources 아래에 있는 대부분의 파일이 변경되고 잠깁니다. 다른 사용자는 파일 권한 오류로 인해 코드를 생성할 수 없습니다. .mex 파일 같은 이진 파일이 잠기면 팀에 영향을 줄 수 있습니다.

  • 종종 resources를 삭제해야 하는 경우도 있습니다. 그러나 폴더가 일부 소스 컨트롤 툴 상태(예: SVN)에 있을 때 resources를 삭제하면 not a working copy 오류 같은 문제가 발생합니다.

  • 프로세스의 아티팩트로 생성된 코드를 체크인하기 위해, resources 캐시 폴더에 있는 일부 파일을 프로젝트에 속한 별도 위치에 복사하는 경우가 많습니다. 이런 식으로 필요할 때 임시 캐시 폴더를 삭제할 수 있습니다. 생성된 코드 파일을 표시하려면 packNGo 함수를 사용하고, 그 파일을 올바른 메타데이터와 함께 프로젝트에 추가하려면 프로젝트 API를 사용하십시오.

  • resources 폴더에 작은 크기의 파일이 많을 수 있습니다. 이때 이러한 파일이 최신 상태인지 확인하기 위해 각 파일을 체크인할 경우 소스 컨트롤 툴의 성능이 저하될 수 있습니다.

변경 사항이 저장되지 않은 프로젝트 파일 찾기

프로젝트에 변경 사항이 저장되지 않은 파일이 있는지 확인할 수 있습니다. 프로젝트(Project) 탭의 툴(Tools) 섹션에서 저장되지 않은 변경 내용(Unsaved Changes)을 클릭하십시오.

저장되지 않은 변경 내용 대화 상자에서 변경 사항이 저장되지 않은 모든 프로젝트 파일을 볼 수 있습니다. 참조된 프로젝트가 있는 경우 프로젝트별로 파일이 그룹화됩니다. 변경 사항을 모두 저장하거나 취소할 수 있습니다.

프로젝트를 닫을 때 열려 있는 파일 관리하기

프로젝트를 닫을 때 변경 사항이 저장되지 않은 파일이 있는 경우 변경 사항을 저장할지 아니면 취소할지 묻는 메시지가 표시됩니다. 변경 사항이 저장되지 않은 모든 파일을 볼 수 있으며, 참조된 프로젝트가 있는 경우 파일이 프로젝트별로 그룹화되어 표시됩니다. 작업 손실을 방지하기 위해 변경 사항을 파일별로, 프로젝트별로, 또는 전역적으로 저장하거나 취소할 수 있습니다.

이 동작을 제어하려면 홈(Home) 탭의 환경(Environment) 섹션에서 기본 설정(Preferences)을 클릭하십시오. MATLAB > 프로젝트(Project)로 이동한 다음 프로젝트 종료(Project Shutdown) 섹션에서 열려 있는 프로젝트 모델을 확인하여 미저장된 변경이 없으면 닫기(Check for open project models and close them, unless they are dirty) 레이블의 체크박스를 선택하거나 선택 취소합니다.

관련 항목