-
Why? 깃을 사용하는 이유
리눅스 토발즈가 리눅스 소스코드를 관리하기 위해 git을 개발
우리 주변의 버전 관리 시스템
google drive, notion, drop box , ever note
Git == DVCS ( 분산 버전 관리 시스템 Distributed Version Control System ) - svn과 가장 큰 차이임
What? git으로 할 수 있는 것
commit : 의미 있는 하나의 작업 단위
branch : 목적을 따르는 하나의 작업 범위
branch/checkout ( switch, restore 두가지로 분화함) : branch간 이동
git 명령어 테스트 해볼수 있는 사이트 : https://learngitbranching.js.org
branch/merge : branch 병합
How? git이 작동하는 방식
분산은 저장소가 분산화 되어 있다는 것을 의미
분산 버전관리 시스템은 remote Repo를 일단 local Repo로 복제해와서 작업을 하고 업데이트는 필요시 가능
중앙 집중형 버전관리 시스템은 바로바로 Repo에 반영됨
push/pull은 remote Repo와 local Repo의 동기화를 위한 커맨드
Workflow
Staging Area
- add 명령어는 repo에 올릴 내용을 commit 하기전에 staging area에 담는 명령어
# 깃 명령어들
빨간색 - 한번은 꼭 사용해야함
파란색 - 이정도는 사용해야 깃 기초는 한다
초록색 - 파란색 명령어로 대체될 수 있는 것들
주황 - 깃 고수라면 써본 명령어
보라색 - 알고있으면 도움되는 명령어 (reflog는 깃이 꼬이면 해결할수있는 명령어)
분홍색 - 알고있으면 가끔 써먹을 만한것
References
(1) : https://git-scm.com/book/en/v2
(2) : https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow
(3) : https://guides.github.com/introduction/flow
(4) : https://docs.gitlab.com/ee/topics/gitlab_flow.html
(5) : https://woowabros.github.io/experience/2017/10/30/baemin-mobile-git-branch-strategy.html
(6) : https://ndpsoftware.com/git-cheatsheet.html
(7) : https://conventionalcommits.org/
커밋을 취소하려면 새 커밋을 만들어 취소하는 커밋을 해야함, revert 명령어를 활용
있던 커밋을 그냥 지운다면 모든 local repo가 깨져버리므로 안됨
'Git' 카테고리의 다른 글
[Trouble] pull request시 비교할것이 없다는 문제 (3) 2021.08.22 저장소를 fork 후 이용하는 예 (0) 2021.08.22