TIL(24.12.18)

채채·2024년 12월 18일

Today I Learned

목록 보기
35/75

깃특강 4

.gitignore

  • git repository만들때 무조건 생성하기! (readme 파일처럼)
    이 파일에 넣은 것들은 추가, 수정, 삭제를 해도 기록에 남지 않음.

  • 언제 쓰나? ?
    - 비밀번호 등 중요한 정보 등을 깃허브나 깃서버에 올리고 싶지않을 때
    - 프로젝트에 필요없는 파일 등 깃허브에 올릴 필요 없을 때

  • 생성 방법

작업 폴더 내에 .gitignore 파일 생성
.gitignore 파일안에 파일명.확장자 또는 폴더명 작성 후 저장
git add . -> git commit 하면 생성됨.
  • 주의 ! 파일 또는 폴더가 깃에 커밋되기전에 .gitignore에 저장해야 함.
    먼저 커밋한 후에 저장하면, 이미 커밋 로그가 남아있기때문에 소용이 없음. 반드시 최초생성시 넣을 것.

  • gitignore.io 사이트를 이용하면, 각 os, 프로그램별 필요없는 파일을 한번에 검색할 수 있음. (.gitignore에 복붙)
    ex) 맥의 .DS_store나 윈도우의 임시파일 등등


branch

  • 브랜치 == 특정 커밋을 가리키는 포인터!
    깃의 꽃은 브랜치!
    브랜치는 많이 만들어도 됨. 여러개 만들어보면서 연습해볼 것.

  • main은 고객에서 서비스 할 부분.
    기본인 main 또는 master에서 가지를 만드는 것.

  • 만드는 이유 : 브랜치는 보통 기능단위로 나눔.
    각 브랜치는 독립적이므로 협업을 위해 사용함.
    혼자 작업하더라도 각각의 기능구현 시 사용하면 편함

  • 가지를 만들어서 각각 작업하다가, 작업이 끝나면 다시 하나의 main으로 합침.(merge)


  • 브랜치 생성 방법
    해당 브랜치에서 작업한 내용은 main이나 다른 브랜치에 아무 영향을 주지 않음.
git switch -c 브랜치 이름
git log 로 확인

  • merge(각각 작업한 브랜치 합치기)

  • fast_forward
    첫번째 가지 합치기. main에서 나온 a라는 branch는 이미 main의 정보를 모두 갖고 있기 때문에 a부분만 합치면 됨. 이런경우 포인터를 a로 옮기기만 하면 됨.

  • 방법

git merge a(브랜치 이름)
  • 3-way merge
    두번째 가지 합치기. 첫번째 가지는 a branch만 합치면 됐지만, b브랜치는 내용이 아예 달라서 새로운 커밋을 만들면서 합쳐야 함.
    방법
    새로운 커밋을 만든다는 내용이 나왔을 때 커밋내용 작성 후 :wq를 써주면 됨.
git merge b(브랜치이름)
:wq
  • conflict
    머지 할 때 충돌이 생길 수 있음. (conflict)
    main 에서 나온 a, b 브랜치에서 각각 main에 있던 파일을 수정했다면, 자연스럽게 충돌현상이 발생함.
    이럴경우 해당파일로 가서 직접 수정해주고 다시 커밋하면 됨.

:wq란?

vi 편집기를 이용한 CLI 명령어

touch c.py   # c.py파일 생성
vi c.pt		# 파일 창 열기
i			# insert 명령어누르고 수정
esc 		# 수정 끝. 수정창 나감
:wq			# 저장, 나감.

commit message 작성시에도 사용가능.

git commit -m 에서 -m을 작성하지 않고
git commit만 작성하면 길게 작성할 수 있는 작성창이 생김.
여기서 feat: add test.py 작성하면 길게 작성할 수 있음.
작성 후 :wq 로 빠져나오기

즉,

  • git commit은 길게 작성하기
  • git commit -m은 한 줄만 작성하기.
profile
화이팅

0개의 댓글