반응형
제로베이스 데이터 분석 스쿨 내용에 대한 기록이다.
7번째는 git 강의이다.
[git log 문법]
- git log
- 저장소의 커밋 이력을 시간순으로 모두 출력
- git log -2
- 최근 2개만 출력
- git log --skip 5
- 최근 5개 스킵하고 나머지 모두 출력
- git log -p -1
- diff를 포함해서 출력
- git log --oneline
- 커밋 로그 id와 커밋 메시지만 보기
- git log --author=(유저 이름 or 유저 이메일)
- 사용자 정보로 검색
- git log -S (검색어)
- 파일의 변경 내용으로 검색
- git log --grep (검색어)
- 커밋 메시지 내용으로 검색
- 커밋 메시지 내용으로 검색
[remote repository]
- git remote add origin (url)
- remote 저장소 추가
- git remote set-url origin (url)
- 주소 수정
- git remote rename (old_name) (new_name)
- 이름 수정
- git remote remove (name)
- 삭제
- git remote -v
- 정보 확인
- git remote show origin
- 정보 상세 보기
- git pull origin main
- 저장소의 최산 상태를 로컬에 동기화
- Fetch + Merge 과정이 순차적으로 진행
- git push origin main
- 로컬의 작업 내용을 저장소에 업로드
- 로컬의 작업 내용을 저장소에 업로드
[checkout과 branch]
- git checkout (커밋 id)
- 특정 버전(시점)으로 이동
- 파일의 수정 상태나 생성도 모두 복원
- git status 하면 HEAD가 해당 버전을 가리킴
- 브랜치 개념
- 원래 코드를 복사하여 독립적으로 개발할 때 사용
- 특정 버전에서 새로운 브랜치를 만들어 작업 후 병합 가능
- 레포지토리를 처음 만들면 main 브랜치가 기본적으로 생성
- git branch
- 로컬 브랜치 목록 보기
- 아스타로 현재 브랜치 표시
- git branch -r
- 리모트 브랜치 목록 보기
- git branch -a
- 모든(로컬 + 리모트) 브랜치 목록 보기
- git branch (브랜치 이름)
- 브랜치 생성
- HEAD가 가리키는 현재 상태에서 브랜치가 생성
- git checkout -b (브랜치 이름)
- 브랜치 생성과 동시에 이동
- git push origin (브랜치 이름)
- 브랜치 배포
- git branch --delete (브랜치 이름)
- 로컬 브랜치 삭제
- git push origin --delete (브랜치 이름)
- 리모트 브랜치 삭제
- git checkout (브랜치 이름)
- 브랜치 간 이동
- 브랜치 간 이동
[merge와 conflict]
- 머지 개념
- 현재 위치한 버전에 다른 버전을 병합
- 헤드의 위치가 어딘지가 제일 중요
- 브랜치를 병합할 때 사용
- push pull할때 저절로 발생
- 머지 예시
- dev와 main 브랜치가 있을때 둘을 main 브랜치로 병합하고 싶을 때
- main 브랜치로 이동
- git merge dev 하기
- main 브랜치에 새로운 버전 하나가 생기고 머지된 버전이 저장
- 머지 예시 2
- dev에서 main 브랜치를 가져와 병합하고 싶을 때
- dev 브랜치로 이동
- git merge main 하기
- dev 브랜치에 새로운 버전 하나가 생기고 머지된 버전이 저장
- 컨플릭트 개념
- 오토 머지가 불가능한 상황에서 발생
- 두 브랜치에서 같은 버전의 같은 부분을 수정한 상황
- 개발자가 직접 해결해야만 한다.
- 컨플릭트가 발생한 파일은 특수문자가 생겨 표시
- 충돌이 발생한 부분을 ======를 기준으로 위 아래 다른걸 표시
- 컨플릭트 해결 과정
- 컨플릭트 발생한 파일 수정 (통일)
- git add (파일 이름)
- git commit -m (메시지)
- 가끔 안될 때는 git commit -i -m (메시지)로 강제 커밋
- 충돌 발생 부분을 파일에서 찾기로 완전히 수정하는게 중요
- 컨플릭트 꿀팁
- 보통 push pull 과정에서 발생
- 평소에 바로 push 하지말고 pull 먼저 하고 작업 하는게 중요
- push 하다가 실패: pull해서 conflict 에러 수정
- pull 하다가 실패: conflict 에러 수정
반응형
'데이터분석 교육 (제로베이스)' 카테고리의 다른 글
[스터디 노트] 9번째 파이썬 분석 기초 (240919), 제로베이스 데이터 분석 스쿨 내용 (0) | 2024.09.19 |
---|---|
[스터디 노트] 8번째 git (240918), 제로베이스 데이터 분석 스쿨 내용 (0) | 2024.09.18 |
[스터디 노트] 6번째 git (240915), 제로베이스 데이터 분석 스쿨 내용 (1) | 2024.09.15 |
[스터디 노트] 5번째 SQL (240911), 제로베이스 데이터 분석 스쿨 내용 (11) | 2024.09.11 |
[스터디 노트] 4번째 SQL (240910), 제로베이스 데이터 분석 스쿨 내용 (0) | 2024.09.10 |