김데이의 개발공부

[ TIL ] Day 14 - Git 협업하기 2 , Git 심화 학습 본문

코드잇 Node.js(BE) 부트 캠프/TIL (Today I Learn) 📑

[ TIL ] Day 14 - Git 협업하기 2 , Git 심화 학습

theday365 2025. 10. 15. 19:06
반응형

🗓️ 수업 일자 : 2025.10.15

✨ 오늘의 수업 평가  [ PROJECT ]  아직은 미완성, 내일이 기대돼! ⏭️🚀

 

📝  오늘 배운 내용  
- Git 협업하기 2 - Fork 하기, .gitignore

- Git 심화 - Git 파일의 단계별 상태, commit 심화

 


1. Git 협업하기 2

 Fork 

: 다른 사람 혹은 팀의 github 저장소를 내 계정으로 복사 해 오는 기능

 

Fork 사용 및 협업 루틴 

  1. GitHub에서 상대방의 remote repository에 접속산 뒤 상단의 Fork 버튼 클릭 : 설정 마친 후 가져오
  2. 내 계정에 복사본 repo가 생성 됬다면, 로컬에 working directory 만들기 : git clone 내레포주소
  3. 코드 업데이트를 위하여 원본 repo도 연결 : git remote add upstream 원본레포주소
  4. 내 브랜치를 만들기 : git switch -c 브랜치명
  5. 코드 작업 후 커밋 : git add . & git commit -m "작업내용"
  6. 내 작업repo(fork repo)로 push : git push origin 브랜치명
  7. GitHub에서 상대방에게 PR(Pull Request) 보내기 : “Compare & Pull Request” 버튼 클릭 하여 내용 작성 후 전달

 

 .gitignore 

: 원격저장소(remote repo)에 commit 할 때 staging 하지 않을 파일/폴더를 설정 해주는 파일.
: 개별 파일/폴더, 특정 확장자, 특정 명칭의 파일 등 세부적으로 조정이 가능하다 

#특정 파일을 제외
파일명.txt 

#.key 확장명을 가진 파일 모두 제외
*.key 

#secret 이라는 이름을 가진 모든 파일 제외
secret.* 

#해당 폴더와 하위 파일 모두 제외
폴더명 

#경로를 지정하여 제외시키기 가능
폴더명/파일명.js

 

.gitignore 파일은 개별적으로 만들어 써도 되지만, 전문적으로 만들어 주는 사이트에서 원하는 언어를 작성해 다운로드 받아 사용해도 된다. 

Gitignore.io : https://www.toptal.com/developers/gitignore/

 

gitignore.io

Create useful .gitignore files for your project

www.toptal.com

 

[왼쪽] .gitignore 파일로 node modules를 제외 시킴 [오른쪽] 올라가 있던 node modules 파일들이 제외되어 삭제되었다는 표기
[왼쪽] .gitignore 파일로 node modules를 제외 시킴 [오른쪽] 올라가 있던 node modules 파일들이 제외되어 삭제되었다는 표기

 

 merge conflict 

: 브랜치를 merge(합치기) 했을 때 충돌이 나는 현상

[해결 방법] 

 1. 충돌이 난 파일에 가서 해당 부분을 찾은 뒤 수정 후 다시 커밋 진행

 2. merge 자체를 취소함 : git merge --abort

 

 

2. Git 심화

 Git 파일의 단계별 상태 정리 

Git 파일이 거쳐가는 세부 단계 정리
Git 파일이 거쳐가는 세부 단계 정리

 

 

 git commit 심화 

  1. 간단하게 남기는 경우 : git commit -m "작성할 내용 적기" 
  2. 긴 문장을 남겨야 하는 경우 : git commit → 텍스트 에디터 창에서 작업하기
    [텍스트 에디터 Vim ] i 눌러서 편집모드 변경 내용 작성 esc 버튼 눌러서 편집 종료 :wq 입력해서 저장하고 종료
    [텍스트 에디터 nano] 메세지 영역에 커밋 내용 입력 → ctrl+O 누른 후 파일 저장 옵션 나오면 enter → ctrl+X 눌러서 창 종료

[텍스트 에디터 nano] 화면 미리보기
[텍스트 에디터 nano] 화면 미리보기
메세지가 긴 커밋 작성하기 예시
메세지가 긴 커밋 작성하기 예시

 

      3. 마지막 커밋 메세지 수정하기 : git commit -amend -m "수정할 메세지 내용" 혹은 git commit -amend (텍스트에디터)

      4. 커밋 이동하기 : 주로 버전 다운에 사용하지만, 커밋 아이디를 알고 있으면 버전업도 가능함
             - repo 버전만 변경(커밋 내용만 한단계 변경, 실제 작업 영역은 최신화 상태) : git reset --soft 커밋아이디일부 
             - staging area, repo 두 개 영역의 버전 변경(실제 작업 영역은 최신화 상태) : git reset --mixed 커밋아이디일부 
             - working directory, staging, repo 모두 버전 변경(실제 작업 영역까지 버전 변, 주의) : git reset --hard 커밋아이디일부
      5. 주요 커밋에 태그 달기 : git tag 태그이름 커밋아이디(일부)
          태그 확인하기 : git tag

          태그 커밋 상세 보기 : git show 태그이름

          

 


 

📃 내일은 뭘 배울까 🤔

- Git hub 실습 및 복습

반응형