Git?
저장 이력, 변경 기록 등을 추적하는 시스템
로컬 컴퓨터에서 끝낸 작업을 원격 저장소로 보내 개발 완료 시 원격 저장소와 합치거나, 중간에 tag를 붙이고, 분기(branch) 등을 할 수 있다.
"이 포스팅에서는 gitlab 원격 저장소를 기준으로 작성하였습니다."
깃 설치하기
# mac에는 기본적으로 git이 설치 되어있으나, 새로운 버전으로 설치함
brew install git
# git version check
git --version
저장소 만들기 | Init
1. git config (처음에만 설정)
1) gitlab 원격 저장소에 유저이름 설정하기
git config --global user.name <user name>
2) git 원격 저장소에 이메일 설정하기
git config --global user.email <user email>
3) 추가한 유저이름, 이메일 확인하기
git config --global --list
2. 로컬 컴퓨터에 git 초기화하기
mkdir <git local dir>
cd <git local dir>
git init
3. gitlab 원격 저장소 연결하기
git remote add origin <gitlab 프로젝트 주소>
branch 만들기 | Merge
branch를 만드는 이유: main project에 영향을 줄 수 있는 불확실한 sub project를 진행할 때, branch에서 작업을 진행함.
* 참고: 모든 수정 이후에는 다시 commit해야 gitlab에 적용됨
1. branch 만들기
1) branch 만들기 & branch 이동하기 (한 번에)
git checkout -b <branch name>
2) branch 확인하기
git branch
3) branch 이동하기
git checkout <branch name>
2. branch 합치기
git checkout <branch name(master)>
git merge <branch name(issue1)>
*참고: 병합시 충돌 해결 (예시)
git merge issue2
git merge issue3
3. branch 삭제
1) local에서 삭제
git branch -d <branch name>
2) 원격 저장소에서도 삭제해야함
git push origin :<branch name>
저장하기 | Commit
1. gitlab 저장소에 있는 파일 가져오기
git clone <gitlab 주소>
2. 저장소 확인하기
git remote -v
3. 저장소 현재 상태 확인하기
git status
4. 저장할 파일 추가
git add <file 이름>
5. 저장한 파일 commit 하기
git commit -m "<변경사항>"
되돌리기 | reset, revert **주의!
1. reset 과 revert의 차이
1) revert: rollback한 commit 이력이 모두 기록되기 때문에 안전한 방법
2) reset: rollback한 시점 이후 단계의 commit 기록이 삭제됨 (공용 브랜치에서 사용하지 않는 것을 권장함)
2. 깃 상태 보기
git log --oneline
3. 깃 되돌리기
* 참고: revert 시점의 file 삭제됨
1) git commit & push 취소
git revert <(지우고 싶은) commit Id>
2) 멀티 log 취소하기
# Head는 현재 사용 중인 브랜치의 선두 부분
# Head~3의미: Head부터 순서대로 3번째 log까지
git revert Head~3..
3) git merge 취소
# 1. 병합 상태 확인
git log --oneline --graph
# 2. 병합 취소
# 방금 병합한 것 취소(마스터를 기준으로 함)
git revert -mainline 1 <(취소할 병합) commit Id>
협업하기 | Push, Pull
1. 로컬 컴퓨터에 git 저장소의 최신 버전을 다운로드 받기
(충돌이 없으면 자동으로 merge → commit)
git pull <gitlab 주소>
2. 리모트 저장소에 보내기
git push <gitlab 주소>
# 참고: 처음 설정한 저장소에 push
git push origin master
# 참고2: 깃 브런치에 push
git push origin <branch name>
코드 출처:
1. Gitlab Docs
'Data Engineering' 카테고리의 다른 글
Docker Compose 튜토리얼 (0) | 2023.07.01 |
---|---|
빅데이터 기술 | Kafka로 데이터 수집하기 (0) | 2023.04.06 |
빅데이터 기술 | Airflow로 데이터 파이프라인 생성하기 (ETL) (0) | 2022.12.19 |
빅데이터 기술 | Spark로 분산처리하기 (0) | 2022.12.19 |