2013-06-26 5 views
21

사용자 인터페이스 상태 파일을 커밋에서 제외 할 수 없습니다.xcode에서 사용자 인터페이스 상태를 커밋에서 제외 할 수 없습니다.

내가 github을 푸시하려고 할 때마다, 먼저 커밋하고 변경 사항에 사용자 인터페이스 상태 파일을 삽입하도록 요청합니다 (마우스 나 인터페이스를 아직 이동하지 않았더라도 커밋 된 것으로 표시됩니다!).

나는 다른 유사한 주제에서 설명한 다른 방법을 시도했다. 예를 들어 다음과 같이 루트의 .gitignore에 가능한 모든 사용자 인터페이스를 추가하려고 시도했습니다.

*.xcuserstate 
project.xcworkspace 
xcuserdata 
UserInterfaceState.xcuserstate 
project.xcworkspace/ 
xcuserdata/ 
UserInterface.xcuserstate 

작동하지 않았습니다. 캐시를 지우고 git을 재설정하려고했지만 도움이되지 않았습니다. "수정 : .xcodeproj/project.xcworkspace/xcuserdata/.xcuserdatad/UserInterfaceState.xcuserstate"

그리고 그것은 도와주세요이

처럼 보인다는 (그것이

힘내 상태 명령은 다음 말한다 나를 미치게 만들어)!

답변

31

이러한 파일이 이미 커밋 된 경우 .gitignore 파일이 작동하기 전에 색인에서 해당 파일을 제거해야합니다.

git rm --cached *.xcuserstate 
# or 
git rm -r --cached project.xcworkspace 
+0

, 감사합니다! 이게 그대로 유지 되길 바랄 게. – titicaca

17

당신은 또한 커밋하고 밀어해야 -rm 호출 한 후 VonC의 대답에 추가하려면 (엑스 코드를 만지기 전에 터미널에서이 작업을 수행하거나 다시 자식 도구입니다) 내 문제를 해결했다.

그래서

git rm --cached *.xcuserstate 
git commit -m "Removed cached files" 
git push 

이 그럼 당신은 엑스 코드를 만질 수 다시 근무

+1

커맨드 라인에서 커밋은 나를 위해 그것을 고쳤다. – smacdonald