Git 3

[Git] On branch main nothing to commit, working tree clean

git status 결과로 On branch main nothing to commit, working tree clean이 출력되는 경우에 대해 알아봅시다. 간단히 해석해보면 현재 브랜치인 main에 더 이상 커밋할 내용이 없고, 작업 공간이 clean하다는 의미입니다.working tree가 clean하다는 것의 의미브랜치를 여러 개 생성해 개별로 작업하면서 생긴 커밋들이 메인 브랜치에 모두 merge되어 현재 프로젝트가 가장 마지막 커밋까지 모두 반영되어있는 상태, 그래서 원격 저장소와 로컬 저장소가 같은 모습인 상태를 의미합니다. 모든 내용이 커밋되었고, 더 이상 커밋할 내용이 없다. Git은 이 상태를 working tree가 "clean"한 것으로 인식합니다.이 메시지가 나타나는 경우는 다음과 ..

Git 2024.09.09

[Git] Git 영역 (working directory / staging area / repository), Git add를 하는 이유

Git에는 상태를 관리하기 위해 working directory, staging area, repository 세 가지 영역이 쓰인다. Git을 다루려면 파일을 언제 어느 영역에 보내야 하는지 알아야 하므로 꼭 알아둬야 하는 개념이다. working directory (working tree)현재 작업 중인 영역. 아직 추적(track)하고 있지 않은 상태 staging area (index)git commit을 하면 이 영역에 있는 파일들만 commit에 반영됨git add 명령어로 특정 파일명을 지정하면, 그 파일을 staging area에 보낼 수 있다. 보통 git add . 를 쓰는데, 이렇게 하면 현재 디렉토리와 그 하위 디렉토리에 있는 모든 변경된 파일이 staging area로 올라간다.(..

Git 2024.09.09

[Git] checkout / switch, restore의 차이

checkout 명령어가 지원하는 기능은 두 가지이다. 1. branch 변경2. 파일 변경 사항(커밋) 복원 한 명령어가 두 가지 이상의 기능을 하게 되면 명령어를 쓸 때 목적이 분명히 드러나지 않는다. 그래서 Git 2.23 이후로 branch 변경은 switch로 하고, 파일 변경 사항 복원은 restore을 사용하게끔 명령어가 추가되었다. switch, restore 명령어 발표와 함께 게시된 글 Highlights from Git 2.23 을 보면 해당 내용이 기재되어있다. 명령어 사용 방법과 예시도 나와있으니 한 번 읽어보길 바란다. git checkout기존 checkout의 기능이다. 브랜치 생성/이동, 파일 복구 모두 지원한다.현재 branch를 변경$ git checkout [branc..

Git 2024.09.05