Git ② 로컬 저장소 활용

Xxell-8·2021년 8월 28일
0

Git

목록 보기
2/5

1. Git 저장소 만들기

  • Git 저장소를 만드는 법은 크게 2가지로 볼 수 있다.
    ① 아직 버전관리를 하지 않는 로컬 디렉토리 하나를 선택해서 Git 저장소를 적용하는 방법
    ② 다른 어딘가에서 Git 저장소를 Clone 하는 방법
  1. 기존 디렉토리를 Git 저장소로 만들기

    • Git으로 관리할 프로젝트 디렉토리로 이동
    • 해당 경로에서 git init 명령 실행
      👉 Git 저장소가 되면, .git 폴더가 생성되며, 경로 끝에 현재 branch 이름이 표시된다!
  2. 기존 저장소를 Clone 하기

    • git clone <url> 명령을 통해 원하는 저장소를 Clone

2. Git으로 파일 관리

  • Git이 파일을 관리하게 하려면 저장소에 파일을 추가하고 커밋해야 하는데, git add 명령으로 파일을 추가하고 git commit 명령으로 커밋할 수 있다.
    Git 상태
  1. git add

    working directory, 즉 작업 공간에서 변경된 사항을 저장하기 위해 해당 파일을 staging area에 추가할 수 있다.

# 1. 현재 경로의 모든 파일을 add
$ git add .
# 2. 특정 파일 or 경로를 지정해서 add
$ git add <해당 경로>
cf. `git status`를 통해 현재 Git 상태 파악 가능 
  1. git commit

    staged 상태의 파일들에 대한 이력을 커밋하려 해당 시점의 스냅샷을 기록할 수 있다.
    👉 커밋 메시지는 변경사항을 명확히 알 수 있도록 작성!

# 1. staged 상태의 파일 커밋
$ git commit -m '<message>'

# 2. 모든 변경 사항 자동 추가 후 커밋
$ git commit -a -m '<message>'
  • 저장소 히스토리는 git log를 통해 확인할 수 있다. (log를 그만 보려면 q 입력)
# 각 라인을 한 줄로 보고 싶을 경우
$ git log --oneline

3. 파일 관리 조작

  1. 특정 파일 무시하기
  • .gitignore 파일을 만들어 Git으로 관리할 필요가 없는 파일 패턴을 등록할 수 있다.
    cf. gitignore.io를 활용해 git으로 관리하지 않을 파일 패턴을 편하게 만들 수 있다!
  1. git add 취소하기
  • Staging Area에 추가된 특정 파일을 다시 unstaged 상태로 되돌리기 위해 git restore 명령을 사용할 수 있다.
$ git restore --staged <파일 이름>
  1. git commit 수정하기
  • --amend 옵션을 통해 커밋 메시지를 수정하거나 최신 커밋에 파일을 추가할 수 있다.
# 1. 특정 파일을 빠뜨리고 커밋을 남겼을 경우,
$ git commit -m '<message>'
$ git add <forgotten file> # 해당 파일을 다시 add 하고
$ git commit --amend # 최근 커밋에 함께 커밋하기

# 2. 커밋 메시지를 수정해야 하는 경우
$ git commit -m '<old message>'
$ git commit --amend -m '<new message>'
  1. git commit 취소하기
  • git reset [--option] [commit] 명령을 통해 해당 commit 시점으로 돌아갈 수 있다.
    - 해당 commit 시점으로 돌아가며, 이후 변경 이력에 대해서는 option을 통해 조정할 수 있다.
    1. hard: 해당 commit 시점 이후 변경 이력을 Working Directory에서 삭제
    2. mixed (default): 해당 commit 시점 이후 변경 이력은 unstaged된 상태로 Working Directory에 보존
    3. soft: 해당 commit 시점 이후 변경 이력을 staged 상태로 Working Directory에 보존
# 1. 최근 커밋 취소
$ git reset HEAD^
# 2. 최근 2개 커밋 취소
$ git reset HEAD~2
# 3. 특정 커밋 시점으로 돌아가기
$ git log # 커밋 기록을 통해 특정 커밋 ID 확인
$ git reset <commit ID>

0개의 댓글