본문 바로가기
iOS

Git에서 .DS_Store와 .xcodeproj 파일 무시하기

by 23g 2024. 11. 7.

.gitignore 추가하는 법

안녕하세요!
오늘은 Git의 .ignore 추가하는 법에 대해 써보겠어요!

힘들게 연결한 내 작고 소중한 깃... 그런데 넘나 지저분한 것!
해결 방법은 바로 gitignore 파일 추가하는 거!!!

(라임 맞춰봤음 😜)

근데 이미 추가했는데도 난 왜 지저분한걸까

그래서 오늘은 이미 올라간 항목을 지우고, 다시는 올라가지 않게 설정하는 법을 알아보려고 해요!

1. .DS_Store와 .xcodeproj 파일은 왜 무시해야 할까?

  • .DS_Store: macOS 시스템에서 폴더의 메타데이터(아이콘 위치, 보기 옵션 등)를 저장하는 파일로, 프로젝트랑은 아무 관계 없는 불필요한 파일이에요.
  • .xcodeproj: Xcode 프로젝트 파일이에요. 협업할 때 충돌이 자주 발생하는 파일로, 개인 설정이나 열려 있는 파일 상태까지 저장돼서 협업에서 문제가 생길 수 있어요. 하지만 .xcodeproj 자체는 프로젝트 설정에 필수적이므로, 협업 중 충돌을 피하고 싶으면 .xcworkspacePods 폴더 같은 것들을 .gitignore에 추가하는 게 좋아요.

첫 번째 CASE: 프로젝트 만들 때 gitignore 수정하는 법

프로젝트나 레포지토리 만들 때부터 .gitignore 파일을 추가해주면 좋아요

  1. gitignore 파일 만들기
    새로 레포지토리를 만들 때, gitignore 파일을 생성하는 옵션을 선택할 수 있어요.
    만약 이미 레포지토리를 만들었다면, 루트 디렉토리에서 .gitignore 파일을 새로 만들면 됩니다.
  2. gitignore 파일 찾기
    이미 레포지토리에 .gitignore 파일이 있다면, 해당 파일을 찾아서 수정하면 돼요.
    파일이 없다면 터미널에서 아래 명령어로 .gitignore 파일이 있는지 확인할 수 있어요
    : find . -name ".gitignore"

  3. gitignore에 추가할 내용
    .gitignore 파일을 열고, 위 링크에서 만든 내용을 추가해주면 끗!
  4. 이 아니라 gitignore 파일 저장하기
    파일을 저장하고, 변경 사항을 깃에 반영해요.
    git add .gitignore git commit -m "Add .gitignore to ignore .DS_Store and .xcodeproj" git push origin main

짝짝짝

3. 두 번째 CASE: 이미 문제가 생긴 경우

그사람이 바로 나예요.

 

이미 .DS_Store.xcodeproj가 올라가버린 상황이라면?
항목 삭제 -> 깃 반영 순으로 해결해볼게요.

1. .DS_Store 파일 삭제하기

루트 디렉토리에서 .DS_Store 파일이 여러 디렉토리에 있을 수 있으니, 한 번에 모두 찾아서 삭제할 수 있어요.

find . -name .DS_Store -print0 | xargs -0 git rm --cached

2. 깃에 반영하기

그 후, 삭제한 항목을 커밋하고 푸시해주면 됩니다.

git commit -m "Remove all .DS_Store files from repository"
git push origin main

3. .xcodeproj 파일도 삭제하기

마찬가지로 .xcodeproj도 삭제해야 해요. 이건 .gitignore에 추가 후, 삭제하는 방법도 비슷합니다.

find . -name '*.xcodeproj' -print0 | xargs -0 git rm --cached
git commit -m "Remove all .xcodeproj files from repository"
git push origin main

4. 결론

이렇게 해서 불필요한 파일들을 깔끔하게 정리하고, 깃에 다시는 올라가지 않도록 .gitignore에 추가한 뒤 푸시하면 됩니다!


다들 이제 .DS_Store.xcodeproj 걱정 없이 깃 관리 잘 하세요~!