IT

.idea/workspace.xml을 무시할 수 없음 - 계속 표시됨

itgroup 2023. 5. 8. 22:06
반응형

.idea/workspace.xml을 무시할 수 없음 - 계속 표시됨

PHPSorm을 사용하여, 나는 무시하려고 노력하고 있습니다.workspace.xml제가 기트 커밋을 하려고 할 때마다 나타나는 것입니다.

나의.gitignore다음과 같은 모양:

/.idea/
.idea/workspace.xml

파일이 커밋된 시점에서 다음을 실행했기 때문입니다.

git rm --cached .idea/workspace.xml그리고 나서 제거를 했고, 맨 레포로 밀려났습니다.

하지만 나중에 프로젝트를 변경하면 파일이 계속 나타납니다.

제가 놓친 것에 대한 아이디어가 있나요?

저는 같은 문제에 직면해 있었고, 그것이 저를 궁지로 몰아넣었습니다.문제는 .idea 폴더가 이미 repo에 커밋되어 있기 때문에 무시 여부에 관계없이 git에 의해 추적되고 있다는 것입니다.RubyMine/IntelliJ 또는 사용 중인 IDE를 닫은 후 다음을 추천합니다.

mv .idea ../.idea_backup
rm .idea # in case you forgot to close your IDE
git rm -r .idea 
git commit -m "Remove .idea from repo"
mv ../.idea_backup .idea

그 후에는 .gitignore에서 .idea를 무시해야 합니다.

저장소의 .gitignore에서 무시해도 충분하지만 IDE의 dot 파일은 전체적으로 무시하는 것이 좋습니다.

그렇지 않으면 작업 중인 모든 프로젝트에 대해 모든 .gitnore에 추가해야 합니다.또한 다른 사용자와 협업하는 경우 프로젝트의 소스 코드에 특정되지 않은 개인 구성으로 프로젝트의 .gitignore를 오염시키지 않는 것이 가장 좋습니다.

나는 방금 이 문제가 있었어, 나는 해야만 했어요.git rm -f .idea/workspace.xml이제 그것은 사라진 것 같습니다. (저도 그것을 넣어야 했습니다.).gitignore)

해야만 했습니다.

  • git에서 파일을 제거합니다.
  • 모든 원격에 커밋을 적용합니다.
  • 다른 모든 커밋이 원격에서 업데이트되었는지 확인합니다.

명령

git rm -f .idea/workspace.xml
git remote | xargs -L1 git push --all

다른 커미터가 실행되어야 합니다.

git pull

제거하기.idea/IDE 구성에 영향을 주지 않고 처음부터 다음과 같은 작업을 수행할 수 있습니다.

git rm -r --cached '.idea/'
echo .idea >> .gitignore
git commit -am "removed .idea/ directory"

파일이 나타나는 동일한 dir에서 다음을 수행합니다.

  • rm .idea/workspace.xml
  • git rm -f .idea/workspace.xml (as suggested by chris vdp)
  • vi .gitignore
  • i (편집하려면), 추가.idea/workspace.xml그 대사 중 하나에서,:wq

당신은 지금 잘해야 합니다.

Git repo에 여러 프로젝트가 있는 경우.idea/workspace.xml파일과 일치하지 않습니다.

대신 다음을 수행합니다.

$ git rm -f **/.idea/workspace.xml

그리고 .gitignore를 다음과 같이 표시합니다.

# User-specific stuff:
**/.idea/workspace.xml
**/.idea/tasks.xml
**/.idea/dictionaries
**/.idea/vcs.xml
**/.idea/jsLibraryMappings.xml

# Sensitive or high-churn files:
**/.idea/dataSources.ids
**/.idea/dataSources.xml
**/.idea/dataSources.local.xml
**/.idea/sqlDataSources.xml
**/.idea/dynamic.xml
**/.idea/uiDesigner.xml

## File-based project format:
*.iws

# IntelliJ
/out/

어떤 일이 있어도 변경되었다고 가정하지 말라고 말해주세요.

git update-index --assume-unchanged src/file/to/ignore

예, Git 저장소에서 파일을 제거할 수 있습니다.그러나 팀 모두가 동일한 IDE를 사용하거나 사용자가 혼자인 경우에는 그렇게 하고 싶지 않을 수도 있습니다.여러분 자신도 팀원들도 작업을 재개할 수 있는 좋은 출발점을 갖기를 원합니다.

역시 IntelliJ를 기반으로 하는 Android Studio에서 제가 했던 방식은 이렇습니다.커밋 대화 상자에서 workspace.xml에 대한 변경 내용을 되돌린 다음 버전이 없는 파일로 이동되었습니다.그 후 커밋 대화 상자에서 이 항목을 삭제했습니다.이제 변경 목록에 나타나지 않습니다.내 gitignore는 이미 .idea/workspace.xml을 포함하고 있었습니다.

PHPStorm과 같은 문제입니다.

마침내 다음을 수행하는 것을 해결했습니다.

  • .idea/ 디렉토리를 제거합니다.
  • .gitignore를 동일한 수준으로 이동하면 새로 생성된 .idea/가 됩니다.
  • 무시해야 할 파일을 작성하고 .idea/도 작성합니다.무시될 수 있도록 다음과 같이 입력합니다.

    • .sl/
    • .아이디어
    • .vmdk/*

왜 이런 식으로 작동하는지 모르겠습니다. 아마도 .gitignore는 이 디렉토리를 무시하기 위해 같은 수준의 .idea여야 할 것입니다.

하고 있었기 삭제만 하면 됩니다..git그리고..idea를 선택한 용 하 초 여 초 기 화 시git init문제 해결에 도움이 되었습니다.는 이제 은없습다니가 .idea조금도.

직관적이지 않지만 일단 알게 되면 수정하기가 너무 쉽습니다. 저는 파일을 .gitignore에 추가한 다음 Commit 탭의 변경 목록에서 해당 파일을 되돌렸습니다.그것은 더 이상 나타나지 않았습니다.

(IntelliJ에 의해 git에 변경 사항이 자동으로 추가되면 더 이상 .gitignore와 비교되지 않을 것으로 예상됩니다.되돌리면 IntelliJ는 파일을 추가하기 전에 .gitignore와 비교하기 시작합니다.)

제 경험을 공유하고 싶어서요

저는 어떤 노력을 해도 같은 문제가 있었지만 제가 작업하던 보고서를 뒤집으면 예상대로 최상위 수준에서 .idea를 생성했지만,.gitignore디렉터리 트리 아래쪽 폴더에 배치되었습니다.

그래서:

.idea // On the level above the .gitignore file
application/
- .gitignore // too low to include .idea
- otherfile.js

그래서 저의 해결책은 다음과 같은 것을 만드는 것이었습니다..gitignorerepo와 같이 할 수 .

.gitignore // Now this can successfully target .idea below
.idea
application/
- .gitignore
- otherfile.js
mv .idea ../.idea_backup
rm .idea # in case you forgot to close your IDE
git rm -r .idea 
git commit -m "Remove .idea from repo"
mv ../.idea_backup .idea

이것을 먹어보세요.

다으로끝파로 끝나는 합니다..iws 리고그고.workspace.xml그리고.tasks.xml.gitignore 참조에 있는 파일

언급URL : https://stackoverflow.com/questions/19973506/cannot-ignore-idea-workspace-xml-keeps-popping-up

반응형