[제로베이스 데이터 분석 취업 스쿨]Day15 Git

Git hostory

VCS(Version Control System)

형상 관리 시스템이라고도 한다. 

  • 하나의 프로젝트를 여러명이 동시에 개발해야 한다.
  • 개발 중 문제가 발생하면, 문제의 전후 상황을 파악하여 특정 시점의 버전으로 돌아갈 수 있어야 한다.
  • 버전별로 소스가 관리되어야 한다.

요즘 기업들은 대부분 Git을 사용하고 있다. 

www.git-scm.com

 

Git의 버전관리

파일의 변경사항이 없는 경우, 파일을 새로 저장하지 않고, 스냅샷을 저장한다. 

git 환경 설정

autocrf True로 설정

 git config --system core.autocrlf true

->맥과 윈도우즈간의 충돌을 막을 수 있다. 

 

editor 이름을 code로 설정

git config --global core.editor code

 

Defalut Branch 설정

main으로 설정한다.

git config --global init.defaultBranch main

 

환경 설정 확인

git config -l

 

Git Repository

Git으로 관리하는 프로젝트 저장소

  • Local Repository - 사용자의 컴퓨터 저장소
  • Remote Repository - 원격서버의 저장

분산서버 관리 시스템을 가진다. 

 

git init

폴더를 깃 레포지토리로 만들 수 있다. 

git init

해당 폴더에 .git이 생성된다.

 

git clone

상위 폴더에서 git clone 해준다. 

token 값을 넣어주면 아이디 비밀번호를 넣지 않아도 된다. 

새로운 repository 생성 그리고 토큰 생성

User setting -> Developer settings -> classic token

git clone token@깃클론주소

 

Git 기본사용법 문법 

git status

git status

Working DirectoryStaged Area의 상태를 표시 

보통 파일의 상태를 확인할 때 사용 

 

git add

git add <file_name>

Working Directory에서 생성된 파일을 Staged Area에 추가

Modified 상태의 파일을 Staged 상태로 변경시킬 수 있다.

git add*

폴더 내에 모든 파일을 add해라.

-> 절대 쓰지 않는 것을 추천한다.

파일 내용 수정

cat > test.txt
Hello, Git!

Ctrl + D(저장)

상태가 staged에서 Modified로 변경된다.

git commit -a -m "second commit"

 

git commit

git commit -m <commit_message>
git commit -a -m <commit_message>

반드시 메시지를 포함하여야 한다. 

Working Directory에서 생성된 파일을 Staged Area(Index)에 추가

-a를 추가하면 Staged 상태에 추가한 상태로 커밋할 수 있다. 

 

git ignore

Git에서 무시해야 하는 파일 패턴을 관리 

 

git rm

Git에서 관리하는 파일 삭제

Staging Area의 파일을 삭제하고 Commit

Working Directory에서도 삭제됨 

commit까지 해야지 파일이 삭제되는 것을 알 수 있다. 

실수로 rm 명령어만 사용했다면, 다시 git rm을 사용하여서 바꿀 수 있다.

 

git mv

파일 이동할 때 사용하며, Git에서 파일이름 변경시에도 사용된다.   

메모 생성

touch test.txt

파일 이름 바꾸기

git mv test2.txt test.txt

파일 경로 이동

git mv test.txt src/

하위 src 폴더로 파일을 이동 시킨다.

그리고

원래 폴더에 있는 파일을 지우고

git rm test.txt

src에 있는 test 파일을 Staged 상태로 만들어 준다.

git add src/test.txt

그리고 commit 해준다.

git commit -m "rename test.txt to src/test.txt"

 

😊git 명령어를 사용하지 않고, 바로 'mv test.txt src/'라고 입력하면, commit하지 않고 바로 파일의 경로를 이동 시킬 수 있다. 하지만 git 명령어를 빠뜨리면, 버전관리를 거치지 않은 것이므로 오류 추적불가능하다. 버전 관리할 때는 꼭 git 명령어를 쓸 수 있도록 하자!😊