> php教程 > PHP开发 > Git 튜토리얼의 작업공간, 준비 영역 및 저장소에 대한 자세한 설명

Git 튜토리얼의 작업공간, 준비 영역 및 저장소에 대한 자세한 설명

黄舟
풀어 주다: 2016-12-16 14:48:17
원래의
1187명이 탐색했습니다.

Git 작업공간, 스테이징 영역 및 저장소

기본 개념

먼저 Git 작업공간, 스테이징 영역 및 저장소의 개념을 이해해 봅시다

Workspace: 컴퓨터에서 볼 수 있는 디렉터리입니다.
임시 보관 장소 : 영어로 stage라고 부르며, 또는 색인. 일반적으로 "git 디렉터리" 하위의 인덱스 파일(.git/index)에 저장되므로 임시 저장 영역을 인덱스(index)라고 부르기도 합니다.
저장소: 작업공간에 숨겨진 디렉터리 .git이 있습니다. 이것은 작업공간이 아니라 Git 저장소입니다.

다음 그림은 작업공간, 저장소의 스테이징 영역 및 저장소 간의 관계를 보여줍니다.

Git 튜토리얼의 작업공간, 준비 영역 및 저장소에 대한 자세한 설명

그림 왼쪽 측면 는 작업공간이고 오른쪽은 저장소입니다. 저장소에서 "인덱스"라고 표시된 영역은 스테이징 영역(스테이지, 인덱스)이고, "마스터"라고 표시된 영역은 마스터입니다. 분기로 표시되는 디렉터리 트리입니다.

그림에서 "HEAD"는 실제로 마스터 브랜치를 가리키는 "커서"임을 알 수 있습니다. 따라서 그림에 표시된 명령에 HEAD가 나타나는 곳에 master를 사용할 수 있습니다. 교체하다.

사진에서 개체로 식별되는 영역은 Git 개체 라이브러리로, 실제로 ".git/objects"에 위치합니다. 생성된 다양한 개체와 콘텐츠가 포함된 디렉터리입니다.
작업공간에서 수정(또는 추가)된 파일에 대해 "git add"를 실행할 때 명령을 실행하면 스테이징 영역의 디렉터리 트리가 업데이트되는 동시에 작업 공간에서 수정(또는 추가)된 파일의 내용이 개체 라이브러리의 새 개체에 기록되고 해당 파일의 ID는 다음과 같습니다. 개체가 준비 영역에 기록됩니다.

커밋 작업(git commit)을 수행하면 스테이징 영역의 디렉터리 트리가 버전 라이브러리(객체 라이브러리)에 기록되고 그에 따라 마스터 브랜치가 업데이트됩니다. 즉, 마스터 가리키는 디렉토리 트리는 제출 당시의 임시 저장 영역의 디렉토리 트리이다.

"git Reset HEAD" 명령이 실행되면 스테이징 영역의 디렉토리 트리가 다시 작성되고 마스터 브랜치가 가리키는 디렉토리 트리로 대체되지만 작업 공간에는 영향을 미치지 않습니다. .

"git rm --cached " 명령이 실행되면 파일은 스테이징 영역에서 직접 삭제되며 작업공간은 변경되지 않습니다.

"git checkout ." 또는 "git checkout -- "을 실행할 때 명령을 실행하면 작업 공간의 파일이 준비 영역의 모든 파일 또는 지정된 파일로 대체됩니다. 이 작업은 위험하며 준비 영역에 추가되지 않은 작업 공간의 변경 사항을 지웁니다.

"git checkout HEAD ." 또는 "git checkout HEAD " 명령을 실행할 때 HEAD가 가리키는 지점이 사용됩니다. 주인 분기에 있는 파일 전체 또는 일부가 준비 영역 및 작업 영역에 있는 파일을 대체합니다. 이 명령은 작업 공간에서 커밋되지 않은 변경 사항을 지울 뿐만 아니라 준비 영역에서 커밋되지 않은 변경 사항도 지우기 때문에 매우 위험합니다.

위 내용은 Git 튜토리얼의 작업공간, 임시저장공간, 저장소에 대한 자세한 설명입니다. 더 많은 관련 글은 PHP 중국어 홈페이지(m.sbmmt.com)를 참고해주세요!


원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿