본문 바로가기
내일배움캠프/GIT

github branch

by useSword 2024. 2. 28.

브랜치 

수정은 하고 싶고 기존 파일은 그대로 두고 작업하고 싶을 때 사용 (복사본)

 

명령어

git branch : 현재 브랜치 리스트 확인

 

 

git branch login : login이라는 브랜치를 생성

 

 

git switch login : login이라는 브랜치로 이동 (알림이 있음)
(git checkout login도 같은 의미지만 알림이 없음)

 

 

git switch -c login : login이라는 브랜치를 생성하고 이동

 

 

git branch -D login : login이라는 브랜치를 삭제

 

git stash : 임시보관함(스택형)에 코드를 보관함. 코드 사라짐.
git stash pop : 임시보관함에서 가장 최근에 변경한 내용을 가져옴


git restore --staged {file}
git restore {file}

#커밋 되돌리기
git reset --hard {c_id} : 전부 날림. 
git reset --mixed {c_id} : staging 까지만 남김
git reset --soft {c_id}

branch : 새로운 영역을 만드는게 아니라 다른 부분을 지칭하는 것.

fast-forward : 브랜치에 변동사항이 없을 때

branch merge : 브랜치에 변동사항이 있을 떄

 

브랜치 합치기 

git hub에서 진행하는 편이 좋다. 코드리뷰 하기 위해

충돌이 일어났을땐 로컬이 진행하는 편이 좋다

 

깃허브에서  pull request을 진행할 때 화살표를 보고 판단
깃허브에서 confirm merge까지 눌러야 완료다.

 

 

 

브랜치 이름

main : 배포용
develop(dev) : 테스트용
기능 브랜치 :기능 개발용

 

 

팀개발 

 

팀장

1. dev 브랜치 만들기
git switch -c dev
git push origin dev 
2. 디폴트 브랜치를 dev로 변경

 

팀원

1. git clone 깃허브주소 .
git clone 깃허브주소 
2. 개발브랜치 생성 
git switch -c feat/signup

 

 

충돌시 

git config pull

rebase false
git add -m "충돌해결"
git push origin dev

 

 

gitignore

.gitignore파일 생성 (얘가 git에 올라가야함 없으면 무시할 수가 없음.)

.env를 작성하면 git에서 .env는 올라가지 않음 

 

 

 

 

오늘 진행한 점

 

1. 오늘은 브랜치 생성 및 디폴트 브랜치 변경까지 진행했음.

추후에 개인과제를 수정하여 PR(pull과 request)를 진행할 예정.

 

 

git에 올릴때 아래의 에러가 나타났지만 줄바꿈 관련 에러이고 나타난 상태에서 푸쉬를 해도 문제가 없었다.

WARNING: This is a development server. Do not use it in a production deployment. Use a 
production WSGI server instead.

 

임경원 튜터님의 도와주셔서 아래의 내용을 입력했더니 문제점이 사라졌다.
git config core.autocrlf true
git config --global core.autocrlf true

 

 

그리고 아래의 블로그에서 해당 내용을 참고했다.

https://velog.io/@dailylifecoding/Git-Bash-Window-git-configure-global-core.autocrlf-true-but-still-warning

 

 

2. 개인과제 1번을 함수형식으로 다시 만들었음. 임경원 튜터님이 함수형식의 필요성을 깨달을 수 있다고 하심.

확실히 함수형으로 만들고 수정할 때 기존의 코드는 다 갈아엎고 복잡해지지만 함수형식으로 만드니 수정이 편해짐

 

3. 심화과정 내용을 다시 복습. 다시보니 이해되는 정도가 달라짐.

'내일배움캠프 > GIT' 카테고리의 다른 글

gitignore,readme  (0) 2024.03.12
GIT,GITHUB  (0) 2024.02.14