Git ignore을 스마트하게 설정해보자 에서 토론을 계속:
이번에 팀플을 하면서 git conflict가 너무 많이 났습니다. DS_store 등 프로젝트와 관계없는 파일이 계속 올라가고 있었기 때문인데요, 이를 줄이기 위해 git ignore를 설정하면서 다음과 같은 사이트를 알게 되어 공유하려고 합니다. http://www.gitignore.io/
저는 다음과 같은 키워드를 주었습니다.
<img src=“/uploads/default/145/f066435ff18378dd.png” width=“690” height=“211”>
추가적으로 맨아래에 DS_store도 ignore해주게 하였습니다.
# Created by https://www.gitignore.io/api/xcode,swift,cocoapods
# Edit at https://www.gitignore.io/?templates=xcode,swift,cocoapods
### CocoaPods ###
## CocoaPods GitIgnore Template
# CocoaPods - Only use to conserve bandwidth / Save time on Pushing
# - Also handy if you have a large number of dependant pods
# - AS PER https://guides.cocoapods.org/using/using-cocoapods.html NEVER IGNORE THE LOCK FILE
Pods/
### Swift ###
# Xcode
#
# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
## Build generated
build/
DerivedData/
## Various settings
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
xcuserdata/
## Other
*.moved-aside
*.xccheckout
*.xcscmblueprint
## Obj-C/Swift specific
*.hmap
*.ipa
*.dSYM.zip
*.dSYM
## Playgrounds
timeline.xctimeline
playground.xcworkspace
# Swift Package Manager
# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies.
# Packages/
# Package.pins
# Package.resolved
.build/
# Add this line if you want to avoid checking in Xcode SPM integration.
# .swiftpm/xcode
# CocoaPods
# We recommend against adding the Pods directory to your .gitignore. However
# you should judge for yourself, the pros and cons are mentioned at:
# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
# Pods/
# Add this line if you want to avoid checking in source code from the Xcode workspace
# *.xcworkspace
# Carthage
# Add this line if you want to avoid checking in source code from Carthage dependencies.
# Carthage/Checkouts
Carthage/Build
# Accio dependency management
Dependencies/
.accio/
# fastlane
# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
# screenshots whenever they are needed.
# For more information about the recommended setup visit:
# https://docs.fastlane.tools/best-practices/source-control/#source-control
fastlane/report.xml
fastlane/Preview.html
fastlane/screenshots/**/*.png
fastlane/test_output
# Code Injection
# After new code Injection tools there's a generated folder /iOSInjectionProject
# https://github.com/johnno1962/injectionforxcode
iOSInjectionProject/
### Xcode ###
# Xcode
# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
## User settings
## compatibility with Xcode 8 and earlier (ignoring not required starting Xcode 9)
## compatibility with Xcode 3 and earlier (ignoring not required starting Xcode 4)
## Xcode Patch
*.xcodeproj/*
!*.xcodeproj/project.pbxproj
!*.xcodeproj/xcshareddata/
!*.xcworkspace/contents.xcworkspacedata
/*.gcno
### Xcode Patch ###
**/xcshareddata/WorkspaceSettings.xcsettings
##DS_store - 이건 제가 추가적으로 넣어주었습니다.
**/.DS_Store
# End of https://www.gitignore.io/api/xcode,swift,cocoapods
이 코드를 개발중인 git 폴더의 최상위에 .gitignore 이라는 파일로 만들어주면 됩니다. 생성을 완료하고 finder에서 숨긴 파일을 볼 수 있게 해주는 shift + command + . 을 눌러 확인해보면 생성된 것을 확인할 수 있습니다. 적용이 완료되면 개발하는데 보다 편할 것 같아서 공유합니다.
저희 앱개발 팀에서도 git ignore 파일을 추가해주었는데도 불구하고 인식하지 못하고 여전히 충돌이 나서 몇번 다시 ignore 파일을 만들어주다가 결국 포기했습니다
그래서 머지할 때나 푸시할 때마다 매번 삭제해서 올리는데 너무 번거롭습니다. 왜 그런 걸까요? ㅠ 저 링크 말고 혹시 추천할만한 다른 경로가 있을까요? 충돌 안나시는 분들 아시면 좀 알려주세요 감사합니다
좋아요 1
아직 개발 진행이 많이 안되셨다면, 레포지토리를 새로 만드시는 것도… 새로 만드신다면 git ignore 추가하겠다는 체크박스가 있습니다. 거기서 언어 선택하시면 자동으로 추가 적용됩니다.
아래의 해결책도 있네요~
.gitignore가 제대로 작동되지 않아서 ignore처리된 파일이 자꾸 changes에 나올때가 있습니다.
git의 캐시가 문제가 되는거라 아래 명령어로 캐시 내용을 전부 삭제후 다시 add All해서 커밋하시면 됩니다.
git rm -r --cached .
git add .
git commit -m “fixed untracked files”
그리고 저도 사용자 입장이지만 ㅋㅋ 인용하신 글을 포럼 아래 댓글에다가 추가하는 방식을 해주시면 최신글로 올라오고 관련해서 고민했던 분들이 다같이 볼 수 있어서 더 빨리 해결하실 수 있을 것 같습니다:) 지금 진행하시는 기수분들이 열정이 많아보이시는 것 같아서 좋네요:) 화이팅 하십셩!
좋아요 1
아 아직 포럼이 익숙하지 않아서 어렵네요… ㅠㅠㅠ 담에는 그렇게 하겠습니다 감사합니다
좋아요 2
이 토픽은 이제 닫혔습니다. 새로운 답글을 다실 수 없습니다.