[Git] Git 사용하기 - 파일 추가, 수정, 삭제 상태 저장하기

sun02·2023년 10월 11일
0

Git

목록 보기
2/2
post-thumbnail

Git에 대해 학습한 내용을 정리하는 포스팅입니다.
출처에서 더 자세한 내용을 확인할 수 있습니다.

📍 MacOS 기준으로 작성되어있습니다.


목차

  1. Git 저장소 만들기
  2. 수정하고 저장소에 저장하기
  3. 파일 삭제하기


1. Git 저장소 만들기

1) 기존 디렉토리를 Git 저장소로 만들기

버전관리를 하지 않는 기존 프로젝트를 Git으로 관리하고 싶은 경우에 해당합니다

git init

  • git init : git 저장소 생성
  • ls -al : 모든 파일 확인하기
    • git은 숨겨져 있기 때문에 숨김처리된 파일까지 확인하는 ls -al로 git이 생성되어있는지 확인합니다.


2) 기존 저장소 clone 하기

다른 프로젝트에 참여하려거나(Contribute) Git 저장소를 복사하고 싶은 경우에 해당합니다.

git clone 저장소url



2. 수정하고 저장소에 저장하기

저장하기에 앞서, 워킹디렉토리에서 관리하는 파일의 상태에 대해 알아야합니다.
파일의 상태는 trackeduntracked로 나뉘어집니다.

  • Tracked인 경우, 관리 대상인 파일로 이미 스냅샷에 포함되어 있어 Git이 알고 있는 파일입니다.
    • 따라서 깃의 세 상태인 staged, modified, commited는 Tracked인 파일에 대해서만 나타납니다.
  • Untracked인 경우, 관리대상이 아닌 파일로 스냅샷에도 Staging Area에도 포함되지 않는 파일입니다.

1) 새로운 파일 추가하기

프로젝트에 새로운 파일(git_test)를 추가한 후 git의 상태를 확인해 보겠습니다.

  • git_test 는 untracked 상태인 것을 확인할 수 있습니다.

따라서 'git add git_test' 를 실행해 git_test 파일을 git이 추적하도록 해줍니다.

  • git_test 파일이 tracked 상태이면서 곧 커밋할 Staged 상태가 된 것을 확인할 수 있습니다.


2) 파일 수정하기

이제 tracked 상태가 된 git_test 파일을 수정해보겠습니다.

  • 수정한 git_test 파일은 “Changes not staged for commit” 에 있습니다.

이는, git_test 파일이 tracked 상태이지만 아직 staged상태는 아니라는 것입니다.

따라서, git_test 파일을 staged 상태로 만들기 위해서 git add 를 실행해야합니다.


즉, git add 는 파일을 새로 추적할 때와 수정한 파일을 staged 상태로 만들 때 사용합니다.

  • add는 프로젝트에 파일을 추가한다기 보다 다음 커밋에 추가한다는 의미에 더 가깝습니다.

  • git_test 파일이 staged 상태가 되었습니다.

3) 변경사항 커밋하기

생성하거나 수정한 후 git add 로 추가된 파일들은 이제 커밋할 수 있습니다.

git commit 을 실행하면 git 설정에서 지정된 편집기가 실행됩니다.

  • 저는 Vim 편집기를 사용하고 있고 위 텍스트는 자동으로 나타납니다.

i를 눌러 입력모드로 변경한 후 commit message를 작성합니다.


esc 를 눌러 명령모드로 변경한 후, :wq!를 실행해 편집기에서 빠져나옵니다.

  • esc : 편집모드 -> 명령모드로 변경
  • :wq! : 변경된 내용 저장 후 종료


다음과 같이 "git_test commit" 이라는 커밋 메세지를 포함하는 commit이 실행됩니다.

  • git status 를 확인해보면 더 이상 커밋할 것이 없는 것을 확인할 수 있습니다.

4) 수정 및 커밋을 간단하게

Git은 1), 2), 3) 에서 수행한 git add 와 git commit 메세지 작성을 간단하게 실행하는 방법을 제공합니다.

git commit -a -m "add changes"

  • -a : Tracked 상태의 파일을 자동으로 Staging Area에 넣음
  • -m : 커밋 메세지를 인라인으로 첨부

  • commit에 -a 옵션을 추가해 git add를 실행하지 않고도 모든 파일이 자동으로 staging Area에 추가되게 합니다.


3. 파일 삭제하기

Git에서 파일을 삭제하기 위해서는 Staging Area에서 파일을 삭제한 후에 커밋해야합니다.
이는 워킹 디렉토리에 있는 파일도 삭제하기 때문에 실제 파일도 삭제됩니다.


git rm 삭제하려는 파일명
git commit

  • 파일이 삭제되었습니다.

0개의 댓글