🤔git 이란?
형상 관리 도구(Configuration Management Tool) 중 하나. 그 중 분산 버전 관리 시스템이다. 중앙 집중 방식인 SVN(SubVersion)과 차이는 SVN은 중앙 서버에 문제가 생기면 모든 작업이 중단된다. 개발 PC와 저장소에 분산하여 저장되어 있기에 중앙 서버에 장애가 있어도 로컬 저장소에 커밋을 할 수 있다. 후에 정상화 되었을 때 다시 업로드를 하면 되므로 중앙 저장소의 복원이 가능하다.
🧩git 구조
- working directory : untracked / tracked 파일, unmodified / modified 파일로 나뉨. modified 파일만 staging area로 옮겨갈 수 있음. git add를 통해 파일을 tracked 파일로 만들 수 있다. ex) 해당 폴더의 .txt 파일만 추가 git add *.txt
- add하여 다음 단계로
- staging area : 이곳에 올라온 파일이라도 수정된다면 modified 라고 나온다. 이 수정된 파일을 또 올릴라면 git add (파일명). staging area에서 내릴꺼면 git rm --cached (파일명)
- commit하여 다음 단계로.
- local .git directory (history) --push--> <--pull-- remote .git directory (서버 저장소에 저장)
- commit시 staging area에 있던 파일들이 local .git directory에 올라간다. 그것을 원격 git directory에 옮겨 저장하고 싶다면 push를 이용해 저장하면 되고, 다른 컴퓨터에서 원격 저장소에 저장된 내 작업파일을 내려받고 싶으면 pull 명령어를 사용한다.
commit 규모는 기능별로 하는 것이 좋음. 커밋 메시지는 현재형 동사로, 꼭 메시지에 적힌 것만 작업해서 commit 하기!
🎮명령어
기본적으로 git + 명령어 + -옵션 형식으로 이루어짐 ex) git config --global
더 자세히 알고 싶다면 공식 문서 ㄱㄱ! 😋 Git 공식문서
- git --list : 깃 설정 확인가능
- git --global -e : 터미널에서 설정 확인
- git config --global core.editor "code" : vscode에서 확인
- git init : 폴더안에 깃 초기화
- git rm -rf .git : 깃 제거
- git status : 상태확인
- git log : 로그 확인
- git diff : working directory의 변경된 내용확인 가능. staging area까지 확인시 git diff -staged or cached
- 명령어 줄이기 ex) status를 st로 줄이기 git config --global alias.st status
- 명령어 확인해보기 ex) git config --h
🔜초기 설정
--global을 사용하면 딱 한 번만 하면 되고, 프로젝트마다 다른 이름과 이메일 주소를 사용하고 싶으면 --global을 빼고 사용하면 된다.
- git config --global user.name "이름" : 이름 설정 (깃헙아이디)
- git config --global user.email "이메일" : 이메일 설정 (깃헙이메일)
- git remote add origin (깃헙주소) : git init 후 원격 저장소에 연결 ex) https://github.com/Park-DongHo/WebPractice.git
- git config --global core.autocrlf true (window or mac input) : git 저장소 저장시 줄바꿈 문제 해결
reference
'시작' 카테고리의 다른 글
PyTorch 설치하기.(with CUDA, cuDNN) (0) | 2021.02.18 |
---|---|
Python 가상환경 개요 및 사용법 (0) | 2021.02.15 |
파이썬 설치하기! (feat. 아나콘다) (0) | 2021.01.08 |
처음 시작하는 개발 블로그... 어떤 걸로 시작해야 할까? (0) | 2020.12.10 |