ios 개발 - 내배캠

[10/22 iOSDev] Git, Github

seoleader 2024. 10. 22. 23:51

Git : 형상관리 도구 - 소프트웨어 개발 중 변경사항을 관리하기 위한 도구

Git 을 쓰는 이유 : 버전 관리, 협업 지원, 브랜치 관리, 변경 이력 추적

Github : Git 저장소를 온라인에서 관리할 수 있게 해주는 웹 기반 플랫폼

 

Local 저장소 : 내 컴퓨터에 저장된 Git 저장소

Remote 저장소 : 원격 저장소에 저장된 Git 저장소

Local 에서 작업한 변경사항을 사람들과 공유하려면 Remote 저장소에 Push, Pull Request 사용해서 업데이트 해야함

Remote 저장소에서 내용을 Local 로 가져오려면 Pull 사용

 

Git 은 GUI 툴을 사용하는 방법과 커맨드라인(터미널) 을 사용하는 방법이 있음

 

<git repository 만들기>

git init : 새로운 Local 저장소를 생성할 때

git clone URL : URL에 있는 Remote 저장소에서 복제해서 Local 로 가져올 때

 

<독립적인 작업흐름 만들기>

git branch : branch 목록 확인할 때

git branch 새로운branch이름 : 새로운 branch 만들 때

git switch branch이름 : 현재 작업중인 branch를 변경할 때 - 현재 branch에서 수정사항이 없을 때만 변경 가능. 수정사항이 있을 때는 수정사항을 삭제하거나 commit 해서 수정사항을 없애야 가능

 

<변경사항 저장하기>

git add : 변경사항을 스테이징에 올릴 때 -> git add --all : 수정된 모든 파일을 스테이징에 올림

                                                              -> git add 특정파일 : 특정 파일만 스테이징에 올림

git commit : 스테이징 영역에 올라온 파일들을 Local 에 기록할 때. 체크포인트 만드는 것 -> git commit -m "커밋 메시지" : 어떤 작업을 했는지 작성

git status : Git 에서 현재 작업 중인 폴더(디렉토리)의 상태를 볼 때. 현재 작업 중인 브랜치, 스테이징된 파일, 수정된 파일 등 확인가능

 

<Local 변경사항을 Remote 저장소와 싱크 맞추기>

git fetch : Remote 저장소의 변경사항을 Local 로 가져오지만 Local branch 와 병합하지는 않음

git merge : 두 개의 branch의 변경사항을 하나로 합칠 때. 두 브랜치에서 같은 파일의 같은 부분을 다르게 수정해서 충돌이 발생하면 수동으로 해결해야함

git pull : Remote 저장소의 변경사항을 Local 로 가져와 병합할 때. git fetch 와 git merge 를 한 번에 처리해줌

git push : Local 에 commit 된 변경사항을 Remote 저장소로 업로드할 때

 

 

**Local 환경에서 파일을 수정하면 add -> commit -> push 의 과정을 거쳐야 Remote 와 동기화된다