[221017] TIL
Opened this issue · 3 comments
Taehyeon-Kim commented
선형 마이그레이션(Linear Migration)
- if ~ else if 블록을 사용하는 것이 아니라 if 블록을 사용하여 순차적인 마이그레이션이 가능하도록 대응
Realm Table의 관계를 표현하기 위한 내용
- List
- LinkingObject
- EmbeddedObject
List
컬럼에 직접 접근해서 데이터를 추가해줄 수 있음
- Person
- Dog
Dog의 입장에서는 Person(주인)이 누구인지 알 수 없음
➡️ 속해 있는 테이블에 바깥의 테이블의 정보를 알려주고 싶을 때 LinkingObject 사용
(주의) 제거시에는 List 관계로 포함된 데이터 먼저 제거하고 바깥에 있는 데이터를 삭제해야 함
guard let task = localRealm.objects(Todo.self).filter("title = '태끼의 할 일 7'").first else { return }
try! localRealm.write {
localRealm.delete(task.detail)
localRealm.delete(task)
}
EmbeddedObject
final class Memo: EmbeddedObject {
@Persisted var content: String
@Persisted var date: Date
}
- 특정 테이블에 포함
- 별도의 테이블은 생성되지 않음
Taehyeon-Kim commented
Merge
- 3way merge
- Fast forward merge
git merge
- git merge --abort (merge 취소)
git merge --squash
- 여러 개의 커밋을 하나의 커밋으로 합쳐서 merge 할 수 있음
Taehyeon-Kim commented
git
git config
- git config --global core.editor "code --wait"
- git config -e
- git config --global
- git config --local
- git config --global alias.cm 'commit -am'
- 띄어쓰기 시에는 작은 따옴표 사용
git add
- untracked file의 경우는 명시적으로 git add를 한 번 해줘야 함
- 그 이후부터 -am 옵션 사용 가능(commit -am)
Taehyeon-Kim commented
git config --global alias.ignore '!gi(){curl -L -s https://www.gitignore.io/api$@;};gi'