220704~☀️

220707 Git/GitHub 3 ✔️

개구리찹쌀떡 2022. 7. 10. 13:13

🔵
git add .에서 .은 현재 디렉토리에서 변경된 파일들만을 말한다.

(원래 대부분의 경우 . 은 모든 파일을 이야기한다.  ☞ 내가 또 감히 몰랐을수도, 무지할수도, 어쩌구)

 

 

🔵
git checkout '해시값'
서버 관리 롤백 가능. commit을 했다면 과거 시점으로 돌아가 복구 가능함.
& git log 로 확인 후 원하는 시점 선택해서 롤백

 

 

🔵
원격 저장소에 저장된 파일을 수정하고 싶다면, 로컬에서 파일 수정하고 커밋, 푸쉬하기 ✔️

 

 

🔵

 

branch 주요 특징 예시
Master (main) * 배포 가능한 상태의 코드 LOL 클라이언트 라이브 버전
(9.23.298.3143)
Develop (main) * feature branch로 나뉘어지거나,
발생된 버그 수정 등 개발 진행
* 개발 이후 release branch로 갈라짐.
다음 패치를 위한 개발 (9.24)
feature branches
(supporting)
* 기능별 개발 브랜치 (topic branch)
* 기능이 반영되거나 드랍되는 경우
브랜치 삭제
개발시 기능별
예) 신규챔피언 세나, 드래곤 업데이트
release branches
(supporting)
* 개발 완료 이후 QA/Test 등을 통해 얻어진 다음 배포 전 minor bug fix 등 반영 9.24a, 9.24b, ...
hotfixes
(supporting)
* 긴급하게 반영 해야하는 bug fix
* release branch는 다음 버전을 위한 것이라면, hot fix branch는 현재 버전을 위한 것
긴급 패치를 위한 작업

 

 

🔵

  • 브랜치 생성
    (master) > git branch {branch name}
    {branch name} 미 입력시 브랜치 조회

 

  • 브랜치 이동
    (master) > git checkout {branch name}
    git checkout master

 

  • 브랜치 생성 및 이동
    (master) > git checkout -b {branch name}

 

  • 브랜치 목록
    (master) > git branch

 

  • 브랜치 삭제
    (master) > git branch -d {branch name}

 

  • 브랜치 병합
    (master) > git merge {branch name}
    master에서 병합
    master에 merge가 완료되었으면 branch를 삭제해도 됨

 

🔵
각 branch에서 작업을 한 이후 이력을 합치기 위해서는 일반적으로 merge 명령어를 사용한다.
병합을 진행할 때, 만약 서로 다른 이력(commit)에서 동일한 파일을 수정한 경우 충돌이 발생할 수 있다.
이 경우 반드시 직접 수정을 진행 해야 한다.

 

 

🔵
파일이 수정되면 modified라고 status에 뜸

 

 

🔵
git clone '복사한 git https 주소' : 저장소 복제

 

  • clone 이후 init 안해도 됨.

 

 

🔵
압축파일로 다운받는 것과 clone의 차이점

 

  • master(.git)의 유무
  • 압축파일 ☞ 최신 버전의 파일 및 폴더만 가져오는 것
  • clone ☞ git 저장소를 그대로 가져오는 것

 

 

🔵
pull은 커밋을 받아오고, clone은 저장소를 받아오는 것.

 

 

🔵
branch(가지치기)하기 이전 단단한 뿌리가 필요하다.
반드시 root-commit(최초의 commit)은 필요함!

 

 

🔵
HEAD 란?

 

현재 체크아웃된 브랜치의 마지막(가장 최신) 커밋에 대한 포인터이다.
내가 이동한 Commit의 정보를 표시해준다.

 

예시 :    d8g3ef4 (HEAD -> master) add README     -->  master에 위치해 있음을 알수있다.