플레이데이터 풀스택 백엔드 9기 1주차 주간회고 및 학습기록
Facts
2025.03.14.
OT를 진행했다. 아이스브레이킹 시간에 우리조가 만든 마스코트 (울프나인)이 백엔드 개발 9기의 마스코트로 선정되었다.
2025.03.19.
Git과 Github 사용법을 익혔다. 그러나 아직 익숙하지 않고, 복습을 철저히 하지 못했다.
2025.03.20. ~ 2025.03.24.
SQL 언어 및 MySQL 사용법을 공부하였다. 배운 것을 따로 정리하기 위해 노션 사용법을 배웠다.
Feelings
주말 동안 복습을 철저하게 하지 않아서 후회스럽다. Git과 Github 사용법을 복습하지 않았다고 해서, SQL 기초를 복습하지 않았다고 해서 이번 주 학습 전체에 큰 영향이 가는 것은 아니다. 근데 첫 주부터 기본적인 복습조차 제대로 하지 않으면 내 6개월은 불 보듯 뻔하다. 그나마 잘한 것은, 수업 시간에 최선을 다해 집중했다는 것이다. 어려운 것이 있으면 최대한 그 자리에서 이해하고자 노력했다.
Findings
배운 것 1. Git의 주요 목표
개발 과정의 변경사항을 체계적으로 추적하고 관리하는 것, 즉 형상관리가 Git의 주요 목표이다. 소프트웨어의 변경사항 및 버전들을 기록하고, 여러 개발자가 협업할 수 있도록 충돌을 방지한다.
배운 것 2. Git과 Github의 관계
Git은 로컬에서 작동하고, Github는 Git 저장소를 호스팅하는 플랫폼이다. Github는 원격저장소를 제공하기 때문에 이를 통해 팀원들과 언제 어디서든 프로젝트를 진행할 수 있다.
배운 것 3. Git 파일 상태의 주요 단계
1. Untracked: 새로 생성된 파일로, Git에게 아직 추적되지 않는 상태이다.
git status # git 파일의 상태 확인
2. Staged: Staging area에 추가되어 커밋을 기다리는 상태. Working Directory에서 Local Repository로 넘어가기 전의 완충지대라고 볼 수 있다.
git add README.md # README.md 파일의 변경사항을 staging area에 임시 저장
git add . # 모든 변경사항 staging area에 임시 저장
3. Committed: Staging area에 임시 저장된 변경사항을 로컬 저장소에 기록. 매 커밋은 변경 사항의 스냅샷을 기록하고, 이때 반드시 커밋메시지를 작성하여 변경내용을 설명해야 한다.
git commit -m "변경내용 설명을 위한 커밋 메시지"
배운 것 4. Git 세팅
git config --global user.name "사용자 이름"
git config --global user.email "사용자 이메일"
git config --list # 설정된 내용 확인
위의 코드를 통해 사용자의 이름과 이메일을 설정한다.
배운 것 5. 브랜치와 Merge
git branch "브랜치명" # 새 브랜치 생성
git branch # 현재 브랜치 확인
git switch "브랜치명" # 브랜치 전한 및 파일 복구 등에 사용
git checkout "브랜치명" # 브랜치 전환만을 목적으로 사용
브랜치란 Git 저장소 내에서 특정 시점의 커밋을 가리키는 포인터로, 새로운 브랜치 생성을 통해 독립적인 작업 수행이 가능하다. 메인 코드에 영향을 주지 않고 새로운 기능 실험을 위한 개발 등이 가능하며, 여러 개발자가 각자의 브랜치에서 작업한 뒤 병합하여 협업 효율성을 증대시킬 수 있다.
git log # 현재까지 진행된 로그 확인
git log --oneline --graph # 현재까지 진행된 로그 확인
git log를 통해 지금까지 어떤 변경사항이 있었는지 확인할 수 있다. 로그를 확인하여 커밋 내역을 볼 수 있다.
git checkout main # main 브랜치로 전환
git merge "병합 대상 브랜치" # 병합 대상 브랜치를 main에 병합
git branch -d "병합 대상 브랜치" # 병합 후 안 쓰는 브랜치 삭제
브랜치를 통해 작업을 하다가, 코드간 충돌로 인해 병합이 안되는 경우 파일을 직접 수정하여 merge 해야한다.
배운 것 6. 3-way Merge와 충돌 해결
A
/ \
B C <-- feature 브랜치
| |
D E
\ /
F <-- main 브랜치
A에서 출발해서 B > D > F (main 브랜치)와 C > E (feature 브랜치)로 각각 발전시키며 개발을 진행할 수 있다. 이 경우 main 브랜치의 변경사항과 feature 브랜치의 변경사항이 달라 충돌이 발생할 수 있다. 이 경우, 각 브랜치에서 파일을 수정하여 커밋한 후 main 브랜치로 전환하여 병합을 진행해야 한다. 충돌 부분은 특수한 구분기호 (<<<<<<<, =======, >>>>>>>)로 표시되므로 그 부분을 찾아 직접 수정하면 된다.
배운 것 7. Github 원격 저장소(백엔드 9기)에 코드파일 제출하는 방법 / 과제 pull 하는 방법
1. 과제 파일 pull 하는 방법
your repositories > 원하는 repository 클릭 > Sync fork 클릭 > Update branch > git으로 이동하여 아래 명령어 입력
git pull
2. 과제 파일 push 하는 방법
원하는 작업 파일 commit 후 git 열기 > git push origin
git push -u origin main # 최초 업로드 때 필요한 코드. main과 origin을 매치한다.
git push origin # 최초 업로드 이후의 업로드 때 사용하면 된다.
문제 1. MySQL을 다루던 중 데이터베이스의 테이블들이 섞였다.
✅ 데이터베이스 우클릭 > 'NEW' 클릭 > 'Query Console' 클릭 > DB Script를 다시 작성하기 (복사-붙여넣기)
Future
1. 이번 주에는 매일 2시간 이상 복습할 계획이다.
2. 고등학생 시절 썼던 열품타로 시간을 측정하여 매주 블로그에 올려야겠다.
3. 주말에는 노션에 정리하는 시간을 가지고, 내가 나에게 가르친다는 생각으로 공부할 것이다.
4. 2시 이전 취침, 7시 기상이 목표이다.
'PLAYDATA 주간회고' 카테고리의 다른 글
| 플레이데이터 풀스택 백엔드 9기 4월 4주차 회고 (0) | 2025.04.27 |
|---|---|
| 플레이데이터 풀스택 백엔드 9기 4월 3주차 회고 (2) | 2025.04.22 |
| 플레이데이터 풀스택 백엔드 9기 4월 2주차 회고 (1) | 2025.04.13 |
| 플레이데이터 풀스택 백엔드 9기 4월 1주차 회고 (2) | 2025.04.08 |
| 플레이데이터 풀스택 백엔드 9기 3월 4주차 회고 (0) | 2025.03.31 |