2017-12-09 23 views
0

나는 자식을 배우려고 노력하고있다.git의 저장소라는 용어의 의미는 무엇입니까?

자습서를 거의 읽지 않았습니다. 어디서나 나는이 용어의 실제 의미 인 'Repository'과 혼동을 느낍니다.

는 아래의 정의를 참조하십시오

저장소는 자식이 저장소에 의 모든 메타 데이터를 유지하는 디렉토리 이름을 .git를 포함합니다. .git 디렉토리의 내용은 자식에게는 입니다.

그래서, 내 질문은 .git 디렉토리 (보통은 기본적으로 숨겨져)과 함께 전체 프로젝트 (내 프로젝트의 즉 모든 파일)이 들어있는 디렉토리에만 .git 폴더의 저장소이라고 여부 내 프로젝트 폴더 내에 현재 이라는 저장소이 있습니까?

+0

원격 저장소에 대해 말하면 개념적으로 실제 저장소와 커밋이 살아있는 곳으로 만보기 만하면됩니다. 로컬에서는 네.'.git' 폴더가 저장소라고 말할 수 있습니다 만, 나는이 용어가 원격지에서 사용되는 것을 보았습니다. –

답변

0

이런 식으로 생각해보십시오. 프로젝트 파일 (모든 코드)이 들어있는 폴더가 코드 저장소입니다. Git 메타 데이터가 들어있는 .git 폴더는 Git 저장소입니다. Git 저장소 은 코드 저장소의 내용에에 해당합니다.

일반적으로 누군가가 "저장소"라고 말하면 코드 저장소 (코드베이스가 버전 제어되는 경우 .git 폴더 포함)를 의미합니다. "Repository"가 Git의 관점에서 말하면, 기술적으로는 .git 폴더와 그 내용을 의미합니다.

1

저는 둘 모두 옳다고 생각합니다.

Pro Git에서 "Git 디렉토리, 작업 트리 및 준비 영역의 세 가지 주요 섹션으로 안내합니다." ".git directory (Repository)"라는 그림이 있습니다. 여기서 우리는 저장소가 .git이라고 말하면 Git은 프로젝트의 메타 데이터와 객체 데이터베이스를 저장합니다.

그러나 저장소에 .git 이상이 포함되어 있다는 증거가 있습니다. Git 저장소는 베어 (bare) 또는 비 베어 (non-bare) 일 수 있습니다. 베어 저장소 란 무엇입니까? a repository that doesn’t contain a working directory입니다. 그래서 non-bare 저장소는 작업 디렉토리를 포함합니다. 게다가 Git 하위 모듈을 살펴 보겠습니다. 서브 모듈이란 무엇입니까? A submodule is a repository embedded inside another repository. 노출 된 저장소는 하위 모듈로 추가 할 수 없습니다. 하위 모듈을 추가하는 작업은 수퍼 프로젝트의 작업 트리에 있어야합니다.

작업 디렉토리와 작업 트리의 차이점은 다른 이야기입니다. some answers이 있습니다.