버전 제어에서 폴더 메타 파일 무시
Unity 는 Asset 폴더 내의 폴더에 대한 메타 파일을 생성하고 삭제 합니다.
이는 버전 제어를 사용할 때 성가신 상황을 만들 수 있습니다 (건너 뛰고 질문으로 이동할 수 있음). 누군가는 무시할 파일 폴더를 생성하지만 폴더의 메타 파일을 무시하는 것을 잊어 버립니다. Unity는 메타 파일을 생성하고이 사람은 메타를 버전 관리에 추가합니다. 또 다른 사람은 폴더를 가지고 있지 않기 때문에, 변경 집합을 얻고 자신의 유니티 메타 파일을 삭제하고 버전 제어에서 메타 파일을 제거합니다. 팀의 모든 사람이 이것을 이해하는 것은 아니기 때문에 그 과정은 지옥에서 계속됩니다.
놀랍게도 이것은 항상 발생합니다. 따라서 두 가지 질문이 있습니다.
- 폴더 메타 파일의 버전이 중요합니까?
- 특히 git 또는 mercurial에서 폴더 메타 파일을 자동으로 무시하는 방법이 있습니까?
유니티 문서는 말한다 :
새 자산을 만들 때 자산 자체와 관련 .meta 파일이 버전 제어에 추가되었는지 확인하십시오.
나에게 이것은 버전 관리하에 둘 충분한 이유입니다. 문제를 해결하기위한 두 가지 접근 방식이 있습니다.
- 조직 : "_"로 시작하는 것과 같은 로컬 폴더에 대한 명명 규칙을 설정합니다. 그러나 우리 모두는 이것이 작동하지 않을 것이라는 것을 알고 있습니다 ;-)
- 모든 시스템에 클라이언트 측 사전 커밋 후크 를 설치합니다 . 나는 이것을 아직하지 않았지만 유망 해 보인다.
방금 다른 git 명령으로 놀았는데 다음이 유용 할 수 있습니다. git hook 스크립트는 먼저 .gitignore가 변경되었는지 확인합니다.
git diff-index --cached --name-only HEAD | grep ".gitignore"
Assets 폴더에있는 경우 .gitignore에 새로 추가 된 모든 행의 디렉토리 이름을 인쇄합니다.
git diff --cached --word-diff=plain .gitignore | grep -o -e "{+\/.*\/Assets\/.*+}" | cut -d + -f 2
최신 정보
방금 그런 사전 커밋 후크를 작성했습니다 :-) 코드에 대한 GitHub 저장소 git-pre-commit-hook-unity-assets 및 자세한 내용은 블로그 게시물 을 참조하십시오.
이것을 .gitignore에 추가하십시오.
#Ignore all .meta file
*.meta
#But not source file with postfix. which is everything but a folder
!*.*.meta
접미사가없는 파일은 무시됩니다. 그러나 그것은 아프지 않아야합니다.
자산과 함께 메타 파일을 포함하려면 제외 항목 뒤에 다음을 추가하면됩니다.
!*.*.meta
다음은 내 .gitignore의 샘플입니다.
# Ignore the following files
# --------------------------
# Unity3D specific
#
**/Library/*
**/Temp/*
**/*.csproj
**/*.unityproj
**/*.sln
**/*.userprefs
**/*.pidb
# include meta files
!*.*.meta
나는 이것을 git 저장소 구조가있는 폴더에 배치하므로 내 프로젝트 구조는 다음과 유사합니다.
root folder /
- Unity Project/
- .gitignore
- .git/
- ProjectFolder/
- {all project related data}
도움이 되길 바랍니다.
참조 URL : https://stackoverflow.com/questions/19151247/ignoring-folder-meta-files-on-version-control
'Programing' 카테고리의 다른 글
맞춤형 Linux GUI : 어디에서 시작할까요? (0) | 2020.12.26 |
---|---|
절대 위치 및 오버플로 : 숨김 (0) | 2020.12.26 |
`return function * () {…}`는 무엇을 의미합니까? (0) | 2020.12.26 |
개체 속성 이름으로 템플릿 문자열 (0) | 2020.12.26 |
파서 차단, 교차 출처 스크립트는 document.write를 통해 호출됩니다-어떻게 피할 수 있습니까? (0) | 2020.12.26 |