개발자로 일을 하게 되거나, 개인적으로 개발을 하게 될 경우 Git이란 부분을 맞딱드리게 될 것이다.
1. 우선 Git이란 무엇일까?
https://git-scm.com/book/ko/v2
Git - Book
git-scm.com
공식 홈페이지에서 제공하는 한글 문서에 Git에 대하여 잘 정리되어있으므로 참고하면 된다.
내 블로그에서 간단하게 콕콕 집어 설명하자면 Git은 VCS이다.
Version Control System(버전 관리 시스템) 이다.
과거에는 알집에 압축해서 버전별로 관리하던 시대도 있었는데... 그 당시에 불편한 점이 이만저만이 아니었기 때문에
좀 더 빠르고, 효율적이게 관리할 수 있는 방법이 없을까 하다가 나온 시스템이다.
사용하는 곳은 다양하지만
1. 개인적으로 버전 관리
2. 협업을 위한 버전 관리
로 크게 2가지로 볼 수 있다.
Git은 일단 나중에 Commit이라는 것을 배우게 되는데 Commit 시점, 시점마다 SnapShot을 찍는 개념이라고 보면 된다.
문서 보면 Working Directory, StagingArea, .git directory를 가지고 설명을 해주는데.. 문서를 보면 된다.
이 그림이다.
또 간단하게 설명하자면 git을 사용하게 되면 .git이라는 폴더가 생기게 되고 .git에서 버전을 관리한다고 보면 된다.
Staging Area 또한 .git 폴더에 포함된 녀석이지만, 임시적으로 저장하는 녀석이라 생각하면 된다.
Staging Area : 커밋할 정보를 저장하는 임시 공간
.git : 커밋한 애를 영구적으로 SnapShot 남기는 공간
이 정도로 개념 설명은 끝내고 설치를 정리해야겠다.
2. 윈도우에서의 설치
이 또한 공식문서에 잘 설명 되어 있지만
그냥 간단하게 설명하자면 그냥 홈페이지에서 PC에 맞는 Bit를 찾아서 설치하면 된다.
설치시 Git Bash를 포함시켜 깔아주어야 CLI명령어로 작업이 가능하다.
여기 모니터 같이 생긴애 클릭해서 깔도록 하자.
취향에 따라 Standalone, Portable 편한걸로 설치하면 된다.
Git Bash가 자연스럽게 포함되어있다.
나는 영어를 잘 못하는 관계로 그 이후에 Next 연타를 했다.
위 사진은 vscode에서의 사진, 아래는 git bash 사진.
git --version으로 버전이 확인 가능.
Mac은 내가 Mac을 접해본 적이 없는 관계로 패스하고, 추후에 쓸 일이 있으면 새로 정리해야겠다.
Mac은 그냥 Linux처럼 Terminal이 잘되어있으니 Terminal 열고 git에서 제공하는 명령어를 입력하면 되지 않을까 라고 생각한다.
일단 GitBash나 Terminal이든 다 Command 기반이기 때문에 간단한 명령어를 알아두면 좋다.
아니면 SourceTree라던지 Git의 GUI를 제공하는 툴을 받아서 그냥 마우스로 꾹꾹 눌려가면서 관리해도 된다.
돈만 있으면 좋은 유료툴도 많기 때문에 유료툴을 써도 된다.
3. 간단한 명령어 정리
git init : Version을 관리하고자 하는 폴더에 입력하면 .git 폴더가 생성되고 그 폴더내에서의 작업은 git으로 관리가 가능하다.
git config --global user.name "이름" : github의 계정과 별개로 Terminal상 사용할 이름
git config --global user.email "이메일" : github의 계정과 별개로 Terminal상 사용할 이메일
git config --global user.name : 이름 확인 가능
git config --global user.email : 이메일 확인 가능
git config --global init.defaultBranch "브랜치명" : 시작할 브랜치 Default 설정
git status : 진짜 진짜 진짜 자주 쓸 명령어1. git 변경내용 상태 확인
git add . : 진짜 진짜 진짜 자주 쓸 명령어2. git 변경내용 스테이징 영역에 저장 ( . 부분에 파일이름을 써주면 해당 파일만 add)
git commit: 진짜 진짜 진짜 자주 쓸 명령어3.
git commit만 쓸 경우 Vim 창에 진입하는데 여기서는 i를 눌려서 insert모드로 commit할 내용을 맨 윗줄에 적어주고 ESC를 눌러 입력 종료를 하고, :wq 을 입력하여 저장하고 종료하면 된다. 저장하기 싫다면 :q 저장안하고 강제종료는 :q! 이다.
git commit -m "변경내용 입력 OR 타이틀 입력": 진짜 진짜 진짜 자주 쓸 명령어3. 아마 윗 부분 보다 얘를 자주 쓰지 않을까 싶다.
이 외에 git reset, revert, branch, push, pull, merge 등은 기초적인 부분이 아닌 원격 혹은 버전 관리에 있어서 왔다리 갔다리 하고 합치고 뿌시고 하는 부분이라서 추후에 정리하도록 해야겠다.