SnapKit과 Git Pull!

2025. 5. 21. 23:08·🖋️ TIL Journal
-->
TIL은 편한 말투로 작성됩니다~

 

오늘은 월요일부터 하던 미니프로젝트인 "팀원 소개 앱"을 80~90% 정도 구현하였다.

 

원래 Storyboard나 SwiftUI로만 개발을 했었지만, 이번에는 UIKit을 Code베이스로 작성하는 프로젝트이기에 개발하면서 공부한 내용에 대해 정리해 보겠다.

 

SnapKit 사용법을 따로 정리해둔 Notion 페이지 주소도 아래에 작성해두었다.

SnapKit을 사용하며 정리한 문법들 주소 (Notion)

 

SnapKit


우리 팀은 이번 프로젝트에 SnapKit을 적용했다. 그래서 이 부분도 공부하면서 정리해봤다.

 

SnapKit은 바로 iOS에서 Auto Layout을 코드로 쉽게 작성할 수 있도록 도와주는 Swift 기반의 라이브러리다.

 

지금처럼 스토리보드 없이 UI를 코드로 구성할 때, Apple의 기본 제약 조건 시스템(NSLayoutConstraint)은 코드가 길고 복잡하지만, SnapKit을 사용하면 훨씬 간결하고 읽기 쉬운 문법으로 Auto Layout을 설정할 수 있게 된다.

 

 

SnapKit과 Auto Layout 코드 비교


기본 Auto Layout 코드
let label = UILabel()
label.text = "Hello, Auto Layout"
label.translatesAutoresizingMaskIntoConstraints = false
view.addSubview(label)

NSLayoutConstraint.activate([
  label.centerXAnchor.constraint(equalTo: view.centerXAnchor),
  label.centerYAnchor.constraint(equalTo: view.centerYAnchor)
])

 

보기만 해도 3번째 줄 부터 뭐가 이렇게 긴지 모르겠다.. 이번에는 SnapKit 코드를 보자

 

SnapKit 코드
let label = UILabel()
label.text = "Hello, SnapKit"
view.addSubview(label)

label.snp.makeConstraints { make in
  make.center.equalToSuperview()
}

 

얼핏 보기만해도 SnapKit이 기본 방식보다 코드 길이도 짧고 직관적이라서 한눈에 이해하기 쉽다.

 

예를 들어, make.center.equalToSuperview() 이 한 줄을 아래처럼 해석할 수 있다.

  • make -> 제약을 만들어 줘!
  • center -> 중심에 맞춰줘!
  • equalToSuperview() -> 기준은 슈퍼뷰야!

즉, "이 뷰의 중심을 슈퍼뷰의 중심과 같게 맞춰라"라는 뜻이 된다.

 

이러한 장점들로 인해, SnapKit을 직접 사용해보니 정말 편했다.

 

 

Git Pull!


Git Pull은 어디에서 작동할까?

  • git pull은 내 로컬 브랜치 기준으로 작동한다.
  • GitHub에서 알아서 가져오는 게 아니라, 내가 명령어로 요청할 때만 원격 저장소의 내용을 받아온다.
  • 작업 중인 브랜치에서 직접 pull을 실행해야 최신 내용을 병합할 수 있다.

 

언제 git pull 해야 할까?

  • 팀원이 “PR merge 했습니다!”라고 말했을 때
  • 슬랙/디스코드/노션 등에서 merge 알림이 왔을 때
  • 내가 PR 보내기 직전 → 충돌 방지 및 최신 상태 유지

찾아보니, 팀원 분들이 merge 할 때마다 pull 하는 습관을 기르는 것도 좋다고 한다.

 

Git Pull 실제 사용 흐름

⚠️ 우리 팀 프로젝트 기준으로 develop 브랜치지만, 어떤 팀은 main을 쓰기도 하니 팀 룰에 맞춰서 사용하자!
📌 아래 작업은 “내 작업 브랜치에 최신 develop 내용을 반영해서, 충돌 없이 깔끔하게 작업하기 위한 습관“이다.

 

1. develop(main) 브랜치로 이동

git checkout develop

 

2. 원격 저장소의 최신 develop(main) 내용 가져오기

git pull origin develop

 

3. 다시 내가 작업 중인 브랜치로 이동

git checkout [내_브랜치_이름]

 

4. 내 브랜치에 최신 develop(main) 내용 병합

git merge develop

 

'🖋️ TIL Journal' 카테고리의 다른 글

미니 프로젝트 발표 & 피드백  (0) 2025.05.23
The requested URL returned error: 403 에러와 GitHub 협업 방식 정리  (0) 2025.05.22
GitHub 개발 협업 방식  (0) 2025.05.20
튜터님의 피드백  (0) 2025.05.19
05.16(금) iOS 사전캠프  (0) 2025.05.16
'🖋️ TIL Journal' 카테고리의 다른 글
  • 미니 프로젝트 발표 & 피드백
  • The requested URL returned error: 403 에러와 GitHub 협업 방식 정리
  • GitHub 개발 협업 방식
  • 튜터님의 피드백
MoriOS
MoriOS
기억하기 위해 기록하는 공간 🖋️
  • MoriOS
    MoriOS
    MoriOS
  • 전체
    오늘
    어제
    • 분류 전체보기 (62) N
      • 📌 Swift (10)
      • 📱 iOS (4)
      • 💡 Algorithm (1)
      • ❕Data structure (4)
      • 🪙 Python (0)
      • ⚙️ Git (2)
      • 🖋️ TIL Journal (38) N
      • 📝 Etc (3)
  • 블로그 메뉴

    • GitHub
  • 인기 글

  • 태그

    후행클로저
    swift 스크롤뷰
    레이아웃 가이드
    우선순위 값
    swift optional
    Split
    alert 생성
    layout guide
    static
    swift json
    GitHub
    우선순위 지정
    alert 띄우기
    main.async
    frame layoutguide
    textalignment
    weak
    ios
    Components
    SnapKit
    safearea layoutguide
    ios 스크롤
    content layoutguide
    Optional
    오토 클로저
    TiL
    시뮬레이터 추가
    swift
    Codable
    rawpepresentable
  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
MoriOS
SnapKit과 Git Pull!
상단으로

티스토리툴바