Windows에서 파일의 대소 문자를 변경 하시겠습니까?
git-controlled codebase에는 두 개의 파일이 있는데 이름을 바꾸고 싶습니다. 그 때문에 특히, 난 그냥 파일의 경우를 변경하려면 sourceCode.java
된다 SourceCode.java
예를 들어. 캐치 : 나는 Windows 상자에 있고 파일 시스템은 그것들이 동일한 파일 이름이라고 생각합니다.
Windows와 Git이 해당 변경 사항을 인식하고 체크인하도록하려면 어떻게해야합니까?
그것을하는 방법에 대한 더 많은 힌트를 보려면 여기를보십시오 :
git이 변경 사항을 무시하도록 만드는 방법은 무엇입니까?
또는:
git mv -f name.java Name.java
FAT 파일 시스템을 사용하는 경우 유일한 선택은 2 단계 이름 바꾸기입니다.
- 이름 바꾸기
sourceCode.java
로anything.you.like
- 이름 바꾸기
anything.you.like
로SourceCode.java
우리가 Perforce를 사용하던 시절에는 정확히이 문제가 있었으며 이것이 우리가 해결할 수있는 유일한 솔루션이었습니다.
다음 단계를 통해 Windows에서 사례를 변경할 수있었습니다.
- 추가
ignorecase = false
로[core]
에.git/config
; - 이름을 바꾸려는 파일을 프로젝트 디렉토리 밖으로 옮기십시오.
- 삭제를 색인에 추가하십시오.
- 모든 파일을 원래 위치로 다시 옮기고 파일 및 / 또는 디렉토리의 대소 문자를 변경하십시오.
- 모든 "새"파일을 색인에 추가하십시오.
ignorecase = false
첫 번째 단계에서 추가를 제거하십시오 .
이 방법으로 이름 변경이 포함 된 단일 커밋이 있으며 전체 디렉토리와 같이 쉽게 변경할 수 있습니다.
조심해. 이렇게하면 병합 할 수없는 변경 사항이 발생할 수 있습니다. Git은 이전 대문자 이름과 새로운 소문자 이름이 같은 파일인지 아닌지를 결정할 수 없기 때문에 Windows에서 병합 할 때 혼란스러워합니다 (Git은 아니지만 파일 시스템을 위해). 병합하려면 병합하기 전에 파일을 삭제하는 것과 같은 수동 해결 방법을 수행해야합니다.
이름은 같지만 대소 문자가 다른 파일의 Git rebase 문제 참조
이 문제가 프로젝트에 틀에 얽매이지 않은 이름의 파일을 가지고있는 것보다 더 나쁘지 않은지 확실하지 않지만, 많은 분기를 가진 많은 사용자가 결국 병합되어야 하는지를 아는 것은 가치가 있습니다.
NTFS (또는 FAT)에서는 단일 git mv
명령으로 문제를 해결할 수 없습니다. 이 질문은 작동하는 기술을 보여줍니다 : git mv and only case case of directory
참고 URL : https://stackoverflow.com/questions/1793735/change-case-of-a-file-on-windows
'Programing' 카테고리의 다른 글
“기능”과“절차”의 차이점은 무엇입니까? (0) | 2020.05.16 |
---|---|
파이썬에서 float를 정수로 변환하는 가장 안전한 방법은 무엇입니까? (0) | 2020.05.16 |
MySQL의 열에서 동일한 값을 가진 행 찾기 (0) | 2020.05.16 |
Scala에서 Vector를 언제 선택해야합니까? (0) | 2020.05.16 |
스칼라 목록에있는 아이템을 얻으시겠습니까? (0) | 2020.05.16 |