분산 버전관리 시스템 (Distributed VCS)의 대표적인 한 종류로 소스코드를 효율적으로 다룰 수 있게 만들어 주는 시스템이다
VCS란?
파일 변화를 시간에 따라 기록했다가 나중에 특정 시점의 버전을 다시 불러올 수 있는 시스템을 의미
vcs를 사용하면 선택한 파일을 이전 상태로 되돌리거나, 변경 사항을 비교할 수 있고, 변경한 사람 및 변경 시기를 추적할 수 있음
또한, 파일을 잃어버리거나 잘못 고쳤을 때도 쉽게 복구할 수 있음
git config --global user.name "원하는이름"
git config --global user.email "이메일주소"
GitHub에 설정한 이름과 이메일로 설정해야지 push했을 때 잔디가 심어진다..
나는 다르게 설정했었어서 그동안 잔디가 심어지지 않았던 것..ㅜ
git config --global user.name
git config --global user.email
git config --global init.defaultBranch main
git init을 해주면 로컬 저장소를 생성하고 이제 git에서 해당 폴더를 관리하기 시작함
이때 해당 폴더에 숨겨진 파일을 열면 (command + shift + '.') .git이라는 폴더가 생성되어 있음
이 파일에 git 로그나 기록들이 다 저장됨!
폴더에 새로운 파일을 생성하고 git status를 하면 아래와 같이 생성한 파일이 빨간색으로 나오며 Untracked 상태에 있다고 나옴
그 다음 git add를 해주고 다시 git status를 하면 파일이 초록색으로 변하고 커밋을 할 수 있는 staged 상태로 변함
개인 정보가 들어있거나 보안상 git에 올리면 안되는 특정 파일이나 폴더를 git으로 관리되지 않게 설정 할 수 있다
.gitignore 파일과 admin.yaml 파일을 생성
이때 admin.yaml에는 개인 정보가 들어있어서 git에 올리면 안됨
.gitignore 파일에 admin.yaml이라고 작성 후 다시 git status를 확인하면 admin.yaml은 git의 관리 목록에 나오지 않음
보안상 올리면 안되는 폴더 외에도 기본적으로 갖고있는 라이브러리나 굳이 깃에 올리지 않아도 되는 파일들이 있음
위 사이트는 특정 언어나 프레임 워크를 적으면 알아서 .gitignore에 들어갈 내용들을 생성해 줌
git add . 으로 모든 파일들을 add해준 다음 git commit -m "커밋메시지"으로 커밋을 해줌
git log로 로그를 확인하면 커밋한 내용과 시간 등 정보를 확인 할 수 있음
로그가 길면 'q'를 눌러 로그를 나올 수 있음
git log --oneline을 하면 좀더 간결한 형태로 로그를 볼 수 있음
수정한 파일과 삭제한 파일은 각각 staged 상태로 modefied와 deleted라고 되어있고 새로 만든 파일은 untracked 상태에 있음
이때 git diff를 하면 수정한 내용들을 볼 수 있음
add와 커밋을 한 후 로그를 확인 하여 잘 커밋이 되었음을 확인
소스트리를 사용하면 커밋한 기록을 편하게 볼 수 있음