Git 정리❗ (1)

·2022년 8월 12일
0
post-thumbnail

1. Git이란?

✅ Git은 분산 버전관리 시스템으로 소프트웨어 개발 프로젝트를 위한 소스코드 관리 서비스이다.

2. git 다운로드

윈도우 환경에서 다운로드 시

https://git-scm.com/download/win 링크를 통해 들어가 다운로드 한다.
이때 git bash 꼭 설치한다.
이후 기본설정 그대로 설치를 진행한다. 이후 VsCode와

3. VS Code의 기본 터미널을 Git Bash로 설정

  • VS Code에서 Ctrl+Shift+p 를 입력
  • Select Default Profile 검색하여 Git Bash 선택
  • Ctrl+` 로 터미널을 새로 열어보면 Git Bash가 설정된 것을 볼 수 있다.

4. Git 이름, 이메일, 브렌치명 설정

✅ Git bash를 실행하여 아래의 명령어 실행

git config --global user.name "본인 이름"
git config --global user.email "본인 이메일"

✅ 설정이 잘 되었는지 확인하려면 아래의 명령어를 실행

git config --global user.name 
git config --global user.email

✅ banch란?
소프트웨어 개발은 현재 출시하고 있는 버전의 유지 보수를 하면서 새로운 기능 추가 및 버그 수정을 할 수 있다. 이러한 병렬로 수행되는 여러 버전 관리를 위해 Github에는 branch 기능이 있다.
✅ git은 기본 브렌치명으로 master slave로 설정되어있다. main으로 변경하기 위해 아래의 명령어를 실행

git config --global init.defaultBranch main

5. 프로젝트 관리

5-1) 프로젝트 생성 & Git 관리 시작

✅ VS Code에서 관리할 폴더를 열어준 후 터미널에서 아래의 명령어를 실행한다.
✅ 그렇다면 아래의 이미지처럼 해당 파일에 숨겨진 .git 파일이 생성된걸 확인할 수 있다.

git init

✅ 그 후 해당 폴더에서 작성한 파일을 저장하여 터미널에 변경사항을 확인 할 수 있는 아래의 명령어를 실행한다.
✅ 그렇다면 새로 저장한 파일들이 빨간 이름으로 표시되는걸 확인 할 수 있다.

git status

5-2) git의 관리에서 특정 파일/폴더를 배제해야 할 경우(ex 자동생성 또는 다운, 보안상 민감한 정보를 담은 파일)

✅ 새로운 파일을 생성하여 git status를 입력한다.(sub.html 파일을 생성하였다)
✅ git status 명령어를 실행하면 아래와 같이 sub.html이 나타난 것을 볼 수 있다.

✅ 폴더에 .gitignore 파일을 생성한 후 숨기고 싶은 파일을 적어 저장한다.

✅ 다시 git status를 실행하면 아래와 같이 sub.html은 사라지고 .gitignore이 생성된걸 확인할 수 있다.

✅ 다양한 .gitignore 형식

  • file.c : 모든 file.c
  • /file.c : 최상위 폴더의 file.c
  • *.c : 모든 .c 확장자 파일
  • !not_ignore_this.c : .c 확장자지만 무시하지 않을 파일
  • logs : logs란 이름의 파일 또는 폴더와 그 내용들
  • logs/ : logs란 이름의 폴더와 그 내용들
  • logs/debug.log : logs 폴더 바로 안의 debus.log와 .c 파일들
  • logs/**/debus.log : logs 폴더 바로 안, 또는 그 안의 다른 폴더들 안의 debug.log

6. Git 관리

✅ commit이란?
파일을 추가하거나 변경 내용을 저장소에 저장하는 작업이다.
즉, commit은 버전이라고 생각하면된다. 즉 NO commits yet 이면 아직 버전이 없다고 생각하면 된다. Untracked files은 아직 git이 관리한적 없는 파일을 뜻한다.

✅ git add "파일명" : "파일명"을 아래의 이미지와 같이 담을 수 있다. 또한 "파일명"에 ' . '(점) 을 입력 한다면 모든 파일이 담긴다.

git add main.html
git status

아래의 명령어를 실행하면 다음과 같은 화면으로 넘어간다. (Vi 입력 모드로 진입)

git add .
git commit

✅ vi의 간단한 명령어 모음

i - 입력 시작
esc - 입력 종료
:q - 저장 없이 종료
:q! - 저장 없이 강제 종료
:wq - 저장 후 종료
k - 위로 스크롤
j - 아래로 스크롤

✅ i 를 입력하여 입력모드로 전환한 후 "메시지"(FIRST COMMIT)를 작성한다.
그 후 esc를 입력하여 :wq 를 입력하면 commit된것을 확인할 수 있다.

✅ git log를 입력하여 내용을 확인해본다면 commit 일련코드 와 FIRST COMMIT 문구를 확인할 수 있다.

✅ 간단한 commit

아래의 명령어를 사용한다면 위와 같은 결과를 얻을 수 있다.

git commit -m "메시지"

7. 파일 삭제,생성,변경 시

main.html을 삭제, style.css를 변경, sec.html을 생성해준 후 git status를 실행시키면 아래와 같은 결과를 얻을 수 있다.

git add .
git commit -m "Second Commit"
git log

✅ 위의 명령어를 실행하여 아래의 결과를 얻을 수 있다.

tip - add와 commit을 한번에 하고싶다면 아래의 명령어를 수행하면 된다.

git commit -am "문구"

8. 프로젝트를 옛 버전으로 돌리는법 2가지

8-1) reset - 원하는 시점으로 돌아간 뒤 이후 내역들을 삭제한다.

git log

✅ 위의 명령어로 커밋 내역을 확인한 후 되돌아가 시점의 커밋 해시를 복사하여 빠져나온다.

git reset --hard (돌아갈 커밋 해시)

✅ 위의 명령어를 입력해준다면 원하는 시점으로 돌아간 뒤 이후 내역들이 삭제된 것을 볼 수 있다.

8-2) revert - 되돌리기 원하는 시점의 커밋을 거꾸로 실행한다.

git revert (되돌릴 커밋 해시)

✅ 위의 명령어를 수행할 경우 바로 commit이 수행된다. commit을 하지않고 revert를 하고싶을 경우 아래의 명령어를 입력하면 된다.

git revert --no--commit(되돌릴 커밋 해시)

0개의 댓글