ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Ch4. The Staging Area
    Ray Wenderlich/Mastering Git 2021. 7. 29. 02:16

     

    git reset HEAD books/management_book_ideas.md

    HEAD의 의미

    가장 최근의 commit을 가리킨다.

    위 명령의 의미는 Staging Area에서 books/management_book_ideas.md 파일을 HEAD상태로 되돌려라.

    그냥 Unstage임..ㅋㅋ

     

    파일 옮기기

    mv videos/platform_ideas.md website

    이렇게 하면 git은 videos/platform_ideas.md 파일이 삭제된 것으로 인식한다.

    왜냐?? git은 directory에 관심이 없다고 Ch3에 설명했었다.

    git은 videos/platform_ideas.md path에 해당하는 파일이 더 이상 존재하지 않기 때문에 이 파일이 삭제된 것으로 인식한다.

     

    // mv 커맨드 실행 전
    videos/platform_ideas.md (tracked)
    videos/content_ideas.md (tracked)
    
    // mv 커맨드 실행 후
    videos/platform_ideas.md (deleted)
    videos/content_ideas.md (tracked)
    website/platform_ideas.md (untracked)

     

    그래서 git mv 라는 커맨드가 있다.

    git mv videos/platform_ideas.md website/

    이렇게 하면 git은 파일을 deleted가 아닌 renamed상태로 인식하게 된다.

    Changes to be committed:
      (use "git reset HEAD <file>..." to unstage)
    
        renamed:    videos/platform_ideas.md -> website/platform_ideas.md

    (mv한 뒤 untracted되어 있는 website/platform_ideas.md 를  add해도 똑같은 결과가 나오긴 함)

     

    파일 삭제하기

    rm articles/live_streaming_ideas.md
    Changes not staged for commit:
      (use "git add/rm <file>..." to update what will be committed)
      (use "git checkout -- <file>..." to discard changes in working directory)
    
        deleted:    articles/live_streaming_ideas.md

    deleted가 staged되지 않은 상태로 나타난다.

     

    git add articles/live_streaming_ideas.md

    add한 뒤 commit해주면 된다.

     

    git rm

    우선 파일 삭제한 것 복구부터!

    git reset HEAD articles/live_streaming_ideas.md // unstage
    git checkout HEAD articles/live_streaming_ideas.md // 삭제한 파일 복구

    (checkout만 해도 되긴 함)

     

    git rm을 사용하면 add없이 바로 commit 가능하다.

    git rm articles/live_streaming_ideas.md

     

    'Ray Wenderlich > Mastering Git' 카테고리의 다른 글

    Ch8. Syncing With a Remote  (0) 2021.08.21
    Ch7. Branching  (0) 2021.08.06
    Ch6. Git Log & History  (0) 2021.08.05
    Ch5. Ignoring Files in Git  (0) 2021.08.05
    Ch4. The Staging Area  (0) 2021.07.29
    Ch3.Commiting your changes  (0) 2021.07.29

    댓글 0

Designed by Tistory.