기존 설치가 이전 경로에 남는 Unity 패키지 업그레이드 수정
개발 기록 · 블로그 공개
원본 기록 상태 해결
동일 GUID 임포트가 기존 폴더를 유지하는 현상을 확인하고, GUID 보존 폴더 이동으로 해결했습니다.

작업 결과
기존 DataTable과 Pixora 설치를 각각 업데이트한 후 Assets/TurnRoom 아래로 자동 이동하고 컴파일되는 것을 확인했습니다.
변경 내용
재현 조건
Unity 6000.0.83f1 · 기존 Assets/DesignDataTable 또는 Assets/Pixora 설치 · 동일 .meta GUID의 새 unitypackage
재현 순서
기존 제품 폴더가 있는 별도 Unity 프로젝트에 TurnRoom 제품 패키지를 임포트하고 새 루트와 컴파일 상태를 검사합니다.
기대 동작
기존 에셋 참조를 유지하면서 제품이 Assets/TurnRoom 아래에 설치돼야 합니다.
실제 동작
수정 전 Unity가 기존 GUID의 에셋을 이전 폴더에 유지하여 새 경로를 찾지 못했습니다.
원인
실제 임포트 결과에서 기존 폴더가 유지되고 새 제품 루트가 생성되지 않은 것을 확인했습니다. 동일 GUID만으로 설치 폴더 이동이 보장되지 않았습니다.
적용 내용
공통 PackageLayout은 제품이 등록한 이전·현재 경로를 임포트·컴파일 완료 후 에디터 업데이트에서 AssetDatabase.MoveAsset으로 이동합니다. 공통 코드는 제품명을 참조하지 않습니다. 두 경로가 모두 있으면 덮어쓰지 않고 경고합니다.
검증
수정 전 기존 설치 업그레이드에서 새 제품 루트가 없어 설치 검증이 실패했습니다. 수정 후 DataTable 1,353개와 Pixora 935개 .meta GUID가 모두 유지됐고 누락·변경이 없으며 이전 루트가 제거됐습니다. 이동 후 재컴파일 및 독립 설치 검증이 통과했습니다. DataTable 검증기는 도메인 재로드로 콜백이 초기화돼 새 배치 실행으로 최종 상태를 확인했으며, Pixora 검증기는 재로드 복원 후 통과했습니다.
남은 사항
두 루트가 이미 별개 내용으로 존재하는 상황은 자동 병합하지 않습니다. 실제 화면 검증은 전체 작업과 동일하게 보류했습니다.