Summary

이 오류는 파일 시스템에 대소문자가 다른 두 개의 파일 이름이 존재하고 TypeScript가 두 버전을 모두 감지하기 때문에 발생합니다. 이는 서로 다른 운영 체제 간 작업 시 흔히 발생하는 문제입니다(특히 Windows/macOS는 대소문자를 구분하지 않는 파일 이름을 허용하지만 Linux는 그렇지 않은 경우).

The Problem

You have both:

And TypeScript is finding both files, causing a conflict.

Error

Error: src/components/departments/Basic/DepartmentContainer.tsx(51,43): error TS1261: Already included file name '/home/runner/work/cloudhospital.admin/cloudhospital.admin/src/components/departments/Basic/LoadingBasic.tsx' differs from file name '/home/runner/work/cloudhospital.admin/cloudhospital.admin/src/components/departments/basic/loadingBasic.tsx' only in casing.
  The file is in the program because:
    Imported via "./LoadingBasic" from file '/home/runner/work/cloudhospital.admin/cloudhospital.admin/src/components/departments/Basic/DepartmentContainer.tsx'
    Matched by include pattern '**/*.tsx' in '/home/runner/work/cloudhospital.admin/cloudhospital.admin/tsconfig.json'
    Matched by include pattern '**/*.tsx' in '/home/runner/work/cloudhospital.admin/cloudhospital.admin/tsconfig.json'
 ELIFECYCLE  Command failed with exit code 2.

Solution

 # Remove the file from Git (but keep it locally)
 git rm --cached src/components/departments/basic/loadingBasic.tsx
   
 # Rename it properly
 git add src/components/departments/Basic/LoadingBasic.tsx
   
 # Commit the change
 git commit -m "Fix file casing for LoadingBasic.tsx"

src/components/common/form/Input_Phone.tsx