1. Git이란?
- Git은 소스코드 및 파일의 변경내역을 저장하는 분산 버전 관리 시스템이다.
- 리누스 토발즈에 의해 처음 만들어졌습니다. 리눅스 커널을 만들었다.
- GitHub, Bitbucket, Gitlab 등의 Git 기반 버전 관리 호스팅 서비스들이 있다.
- 공식문서
Git - Reference
Reference
git-scm.com
- help 명령어
git help -a : 상세히 명령어들 살펴보기
git 명령어 -h : 명령어 옵션 보기
git help 명령어 : web에서 해당 명령어 상세보기
- git에 기본 에디터 변경
git config --global core.editor "editor이름"
git config --global core.editor "code --wait" #VSC를 기본 에디터로 설정,
wait을 해주어야 잠시 멈추었다가 VSC에 열린 code 수정 창을 닫으면 CLI가
지속 실행되는 프로세스로 진행된다.
- git 기본 설정 변경
git config global -e #global 설정입니다. 만지실 때 유의해주세요.
2. Git 설치하기
2-1. Ubuntu에서 설치하기
$ sudo apt-get update
$ sudo apt-get install git
2-2. Mac에 설치하기
기본적으로 Git이 설치되어 있습니다. 버전에 따라 설치가 안되어 있는 경우도 있다. 설치가 되었는지 확인하기 위해서는 터미널 창(cmd + spacebar → terminal)에 아래의 명령어를 입력한다.
$ git
usage: git [--version] [--help] [-C <path>] [-c <name>=<value>]
[--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]
...
1) zip파일 다운받아 설치하기
설치가 되지 않은 경우나 최신 버전의 git을 설치하고 싶은 경우 아래의 순서대로 진행한다.
① https://git-scm.com/ 접속한다.
② Download for Mac 버튼을 클릭한다.
③ 다운 받은 파일을 실행한다.
- 맥북 사용하시는 분들 중 missing xcrun 오류 뜨시면 아래 글 참고하세요
Mac 업그레이드 후 xcrun: error: invalid active developer path 에러 해결하기
MacOS 업그레이드 시 어김없이 발생하는 문제가 하나 있습니다 😫 바로 개발 관련 도구 사용 시 대다수가 발생하는 missing xcrun 에러인데요.
www.hahwul.com
2-3. Windows에서 설치하기
1) https://git-scm.com/ 접속한다.
2) Download for Windows 버튼을 클릭하면 아래와 같은 페이지가 열리는데 Click here to download를 클릭 Portable은 무설치 버전이다.
3) 다운 받은 파일을 실행한다. (설치 옵션 중 기본 브랜치를 main으로 바꾸는 옵션이 있다. 이미 Git을 어느정도 숙지하신 분이라면 아래 것을 클릭해서 진행해주세요.)
3. 버전 확인 및 초기 설정
1) 버전 확인
- 다운 받은 Git 버전을 확인할 수 있다.
$ git --version
git version 2.37.3
2) 초기 설정
- 사용자 정보를 설정한다. 설정을 제대로 했는지 확인하기 위해서 list 명령어를 사용할 수 있다. (get 명령어를 사용하여도 된다.)
- 해당 절차를 진행하지 않으면 뒤 PUSH가 안될 수 있다.
$ git config --global user.name "gildong.hong"
$ git config --global user.email email@example.com
$ git config --list
$ git config --get user.name
$ git config --get user.email
이때 email 설정과 username 설정을 제대로 안해주면 커밋 내역에서 계정이름이 아닌 유저 이름이 올라갈 수 있다.
- GitHub을 먼저 가입하였다면 GitHub에 있는 주소로 해야한다. 이 챕터에서 GitHub에 가입하시지 않았어도 진행하는데 무리가 없다. 사용하는 이름과 이메일을 입력하면, 이는 협업할 때 누가 작업했는지를 나타낸다.
- VisualStudioCode에서 사용하는 것이라면 Ctrl + Shift + P를 눌러 Terminal: Select Default Profile을 git bash로 변경
4. 저장소 만들기
- 작업할 디렉토리를 만들고(mkdir) 생성한 디렉토리로 이동(cd)
$ mkdir git-test
$ cd git-test
- 현재 디렉토리를 Git 저장소로 만들어 원하는 디렉토리를 기준으로 버전 관리를 한다.
$ git init
- git init을 입력하면 해당 폴더를 기준으로 .git(로컬 저장소)가 생성된다. 로컬 저장소에는 버전 정보, 원격 저장소 주소가 저장된다.
※ 이때 한 폴더에는 하나의 .git(로컬 저장소)를 가져야한다. 그렇지 않을 경우 충돌이 발생할 수 있다,
5. Commit
5-1. 추가하고 커밋하기(add, commit)
- 파일을 생성(touch), 추가(add)하고 커밋(commit)하기
$ touch README.md
$ git status # Untracked 확인
$ git add README.md
$ git commit -m "first commit"
1) git이 관리할 대상의 파일 등록하기(add)
변경한 파일 목록 중 스테이지에 올리기 원하는 파일만 선택한다. 파일 전체를 올리고 싶은 경우에는 git add 뒤에 .을 입력한다(git add .). 이 때, 스페이스 바가 한 칸 들어가야 한다.
$ git add README.md // 지정 파일 올리기
$ git add . // 파일 전체 올리기
Untracked → Unmodified → Modefied → Staged
|—————— git add ———————→|
| ←——— git commit ——|
2) 버전 만들기 (commit)
$ git commit -m "저장 메세지를 입력해주세요"
5-2. 상태 확인하는 방법 (status , diff , log)
1) 파일 상태 확인하기
$ git status
파일의 상태에 따라 Untracked 와 Tracked 로 분류된다.
① Untracked(관리 대상이 아님)
- 파일 생성 후 한번도 git add하지 않은 상태를 말한다.
② Tracked(관리 대상)
- Unmodified : 최근의 커밋과 비교했을 때 바뀐 내용이 없는 상태
- Modified : 최근 커밋과 비교했을 때 바뀐 내용이 있는 상태
- Staged : 파일이 수정되고 나서 스테이지 공간에 올라와 있는 상태이며, git add 후의 상태
2) 변경사항 확인하기
add 하기 전 최근 commit한 내용과 현재 폴더의 변경사항을 확인할 수 있다.
$ git diff
3) 커밋(commit) 히스토리 조회하기
$ git log
git log 명령어를 입력하면 최근 커밋한 히스토리를 확인 할 수 있다. 로그가 길 경우 q를 누르면 밖으로 빠져나온다. j와 k는 아래로 이동할 수 있다.
5-3. 저장소에 무시할 파일 설정하는 방법
1) 무시할 파일 (gitignore) 추가 하기
① .gitignore 사용하기
push 전 .gitignore 파일에 버전 관리에서 제외할 파일을 추가한다.
# a comment - 이 줄은 무시한다.
# 확장자가 .a인 파일 무시
*.a
# 윗 줄에서 확장자가 .a인 파일은 무시하게 했지만 lib.a는 무시하지 않는다.
!lib.a
# 루트 디렉토리에 있는 TODO파일은 무시하고 subdir/TODO처럼 하위디렉토리에 있는 파일은 무시하지 않는다.
server/node_modules
# build/ 디렉토리에 있는 모든 파일은 무시한다.
build/
# `doc/notes.txt`같은 파일은 무시하고 doc/server/arch.txt같은 파일은 무시하지 않는다.
doc/*.txt
# `doc` 디렉토리 아래의 모든 .txt 파일을 무시한다.
doc/**/*.txt
② .gitignore 자동 생성기 활용하기
.gitignore 파일을 직접 생성해야 하는 경우가 종종 있다. 이 때, 라이브러리와 프레임워크를 사용하는 경우에는 어떤 파일을 깃 버전 관리에서 제외 시켜야 하는지(.gitignore파일에 넣어야 되는지) 헷갈리는 경우가 있다. 혹은 일일이 작성하기 번거로운 경우도 있다. 이럴 때 편하게 사용할 수 있는 툴인 gitingnore.io 를 활용하면 된다.
gitignore.io
Create useful .gitignore files for your project
www.toptal.com
- .gitignore 사용 방법
ⓐ 접속 후 본인의 프로젝트에서 사용하는 운영체제, 개발 환경, 기술 스택을 작성한다.
ⓑ 생성 버튼을 눌러 내용을 생성한 후 전체 내용을 복사하고 .gitignore파일에 추가한다.
'통합개발도구 > Git & Git-Hub' 카테고리의 다른 글
6. Pull Request (0) | 2024.06.07 |
---|---|
5. Fork (0) | 2024.06.07 |
4. Branch (1) | 2024.06.07 |
3. Git-hub (0) | 2024.06.07 |
1. Git & GitHub 기본 개념 (0) | 2024.06.05 |
댓글