Programing

UserInterfaceState.xcuserstate를 무시할 수 없습니다

lottogame 2020. 3. 22. 10:40
반응형

UserInterfaceState.xcuserstate를 무시할 수 없습니다


Xcode 4 프로젝트 버전 제어를 위해 Git을 사용하고 있습니다. 나는 명시 적으로 추가 한 ProjectFolder.xcodeproj/project.xcworkspace/xcuserdata/myUserName.xcuserdatad/UserInterfaceState.xcuserstate.gitignore,하지만 힘내는 그것을 무시하지 않습니다. 왜 그런 아이디어가 있습니까?


Git은 이미 파일을 추적하고있을 것입니다.

로부터 gitignore 워드 프로세서 :

현재 추적되는 파일 추적을 중지하려면 git rm --cached를 사용하십시오 .

이것을 사용 하여 정보 [project][username]함께 사용하십시오.

git rm --cached [project].xcodeproj/project.xcworkspace/xcuserdata/[username].xcuserdatad/UserInterfaceState.xcuserstate
git commit -m "Removed file that shouldn't be tracked"

또는 -a옵션을 사용하여 git commit수정 또는 삭제 된 모든 파일을 추가 할 수 있습니다 .

git에서 파일을 제거하면을 존중합니다 .gitignore.


무시 된 파일이 추적되지 않은 목록에 계속 표시되는 경우 항목 git clean -f -d을 지우는 데 사용할 수 있습니다 .

1.

git rm --cached {YourProjectFolderName}.xcodeproj/project.xcworkspace/xcuserdata/{yourUserName}.xcuserdatad/UserInterfaceState.xcuserstate

2.

git commit -m "Removed file that shouldn't be tracked"

삼.

git clean -f -d

모든 답변은 훌륭하지만 다른 Mac (집 및 사무실) 에서 작업하는 경우 모든 사용자에 대해 제거되는 답변입니다.

git rm --cache */UserInterfaceState.xcuserstate
git commit -m "Never see you again, UserInterfaceState"

친구 가이 놀라운 사이트 https://www.gitignore.io/를 보여주었습니다 . 선택한 IDE 또는 다른 옵션을 입력하면 gitignore유용한 무시로 구성된 파일 이 자동으로 생성됩니다 xcuserstate. 그 중 하나는입니다 . gitignore다운로드하기 전에 파일을 미리 볼 수 있습니다 .


여기에 언급 된 모든 작업을 수행 한 후에도 파일이 계속 표시되는 경우 Xcode 설정에서이 확인란을 선택 해제해야합니다.

여기에 이미지 설명을 입력하십시오


그냥 "git clean -f -d"가 나를 위해 일했습니다!


다음은 git history에서 문제의 파일을 재귀 적으로 제거하는 방법에 대한 아주 좋은 설명입니다. http://help.github.com/remove-sensitive-data/

그렇지 않으면 도구는 처음에는 확인해서는 안되는 거대한 파일에 diff를 표시하려고 시도하는 동안 '멈춤'경향이 있기 때문에 매우 유용합니다 ...

가장 큰 것들을 제거하기 위해 당신이 할 수있는 것 (짧게)은 다음과 같습니다.

cd YourProject
git filter-branch --index-filter 'git rm --cached --ignore-unmatch -r YourProject.xcodeproj/project.xcworkspace' HEAD
# see what you want to do with your remote here...
# you can: git push origin master --force
# or you can delete it and push a fresh new one from your cleaned-up local...
rm -rf .git/refs/original
git gc --prune=now
git gc --aggressive --prune=now

나를 위해 아주 훌륭하게 일했습니다 :)


GitHub를 사용하는 경우 몇 가지 데모 및 바로 가기가 있습니다. 기본 아이디어는 동일합니다.

1. 이와 같이 열린 터미널

여기에 이미지 설명을 입력하십시오

2. 아래 명령을 터미널에 붙여 넣고 공백을 넣은 다음 .xcuserstate 파일의 경로를 다음과 같이 붙여 넣습니다.

git rm --cached 여기에 이미지 설명을 입력하십시오

3. 올바른 자식을 무시하고 코드를 커밋했는지 확인하십시오. :)

여기에 이미지 설명을 입력하십시오


나를 위해 아무것도 효과가 없었지만

이 줄을 gitignore에 추가하십시오.

*.xcuserdata

이것은 나를 위해 작동

  1. project.xcworkspace터미널에서 프로젝트 파일이 들어있는 폴더를 엽니 다 .

  2. 이 명령을 작성하십시오. git rm --cached *xcuserstate

파일이 제거됩니다.


xcode 8.3.3의 경우 위의 코드를 시도하고 확인했습니다.이 경우에는이와 같이 명령을 변경해야합니다.

먼저 다음을 사용하여 .gitignore 파일을 만들 수 있습니다

 touch .gitignore

그 후이 명령을 사용하여 모든 userInterface 파일을 삭제할 수 있으며이 명령을 사용하면 .gitignore 파일을 존중합니다.

 git rm --cached [project].xcworkspace/xcuserdata/[username].xcuserdatad/UserInterfaceState.xcuserstate
 git commit -m "Removed file that shouldn't be tracked"

이런 식으로 쓰는 것이 낫다고 생각합니다.

git rm --cache * / /UserInterfaceState.xcuserstate**

참고 URL : https://stackoverflow.com/questions/6564257/cant-ignore-userinterfacestate-xcuserstate

반응형