untitle

Git

fw3d 2025. 4. 7. 23:49

git 과 github

 

코드 변경점을 기록하는 버전관리도구 (형상관리도구)

 

백업과 공유에 용이한 개발자들의 필수 소양

 

터미널 주요 명령어

명령어   비고
pwd 현재작업중인 디렉터리 pring working directory
ls 현재 폴더의 목록 list의 약자
ls -a 숨김폴더까지 표시  
cd change directory change directory로 이동  
 . 현재폴더  
mkdir 폴더명 폴더생성 make directory
touch test.txt 파일생성  
git init 깃 초기화 정확한 프로젝트 폴더에서 입력할것
git pull 정보합치기  
git add 저장할파일을 지정하는명령어 git add . 현재위치파일 전부등록
git commit -m "변경이름" 수정된파일 올리기  
git status 현재파일 상태 확인  
git log log 확인  
git clone 주소 복제  
     
     
     

 

git init 한위치에 .git 파일 생성 이 위치에서 add해야 트랙킹가능 다른위치에서 add하면 오류발생

window + r 키에 cd 파일경로 입력 >> code . >> vs code로 작업환경 바로실행 

 

  1. Visual Studio code 열어서 키보드 cmd + shift + p (Mac 기준) (원도우의 경우 ctrl + shift + p )누른 후 Shell Command: Install ‘code’ command in PATH 검색 및 선택
  2. 이 작업을 하는 이유는 terminal에서 code . 이라는 명령어 입력 시 Visual Studio Code를 열 수 있게 하기 위함입니다

 

초기코드 githyb에 올리기

 

// 저장소 주소에 해당하는 github 레포지토리와 현재 내 컴퓨터의 git을 연결한다는 뜻입니다.

$ git remote add origin <저장소 주소>

 

// 기본 branch 명을 main으로 변경한다는 뜻입니다. 처음에 master로 설정되어 있는 경우 main으로 변경됩니다.

$ git branch -M main

 

// github repository의 main 브랜치에 코드를 올립니다.

$ git push -u origin main

 

기능 개발 전 각자 branch 생성하기

// 1. 브랜치 생성하기

$ git branch <브랜치명>

// 2. 브랜치로 이동하기

$ git checkout <브랜치명>

// -b 는 새로운 브랜치를 생성한다는 의미입니다.(생성과 이동)

$ git checkout -b <브랜치명>

 

$ git add . $ git commit -m "커밋 메세지"

// 이때 브랜치명은 현재 브랜치명을 작성해주세요.

$ git push origin <브랜치명>

 

PR (Pull Request) 만들기

  1. PR (Pull Request) 만들기
    • 기능 개발 후 해당 브랜치에서 git push 명령어를 입력하고, github repository로 이동하면 다음과 같은 알림이 뜹니다. 이때 Compare & pull request 버튼을 클릭합니다.
    • (만약 뜨지 않는다면 git push가 제대로 됐는지 확인하시거나, Pull requests 탭을 클릭 후 New pull request 버튼을 클릭해보세요)

문제가 없을 경우 merge 하기 (Merge pull request)

 

PR을 생성하면 github repository에서 코드를 최종적으로 합치기 전 (main으로 merge하기 전) 코드를 점검할 수 있습니다.

 

아래 이미지의 붉은 박스처럼 Merge pull request 버튼이 비활성화 됐죠? 이처럼 merge 전에 Conflict가 났다면 Github에서 merge를 할 수 없습니다.

Conflict가 발생했다는 건 팀원이 같은 위치의 같은 코드를 수정했기 때문에 최종적으로 어떻게 변경해야 하는지 Github에서 물어보는 것입니다. 이럴 경우 어떻게 해결하는지 확인해볼게요!

 

기능 개발한 브랜치에서 git pull origin main 명령어로 메인 코드를 가져온다.

 

  1. conflict 난 코드 확인
  2. 좌측 아이콘(Source Control) → 파일 선택 → conflict난 부분 코드 확인
  3. conflict 가 발생한 코드 수정
  4. 최종적으로 바꾸고 싶은 코드로 변경합니다.

다시 git add & git commit & git push 명령어를 입력합니다.

 

$ git add .

$ git commit -m "메세지"

$ git push origin <브랜치명>

 

  1. merge 한다.
  2. 이제 Merge 버튼이 활성화됐네요!

 

7. merge 이후에 다음 기능은 어떻게 개발하는가?

기능 개발 후 branch를 merge 했습니다. 이제 또 새로운 기능을 개발해야 하는데요. 새로운 기능 개발을 할 땐 어떻게 하는지 알아볼게요

  1. main 브랜치로 이동 및 코드 확인
  2. git checkout main 명령어를 입력하면 여러분의 컴퓨터에서 main 브랜치로 이동됩니다. 하지만 파일을 확인해보니 여전히 예전 코드가 그대로 있는 것을 확인할 수 있습니다. 아직 Github repository에 있는 코드를 가져오지 않았기 때문입니다.

 

  1. git pull origin main 으로 merge 된 코드 내려받기
  2. git pull 명령어를 입력한 후에야 실제 github Repository에서 변경된 내역을 저희 로컬 컴퓨터에도 가져올 수 있게 되는 겁니다.
새로운 브랜치 만들고 브랜치 이동하기
이제 새롭게 내려받은 main 브랜치에서 또 새로운 기능을 만들어봅시다!

 

$ git branch <브랜치명>
$ git checkout <브랜치명>