git으로 특정 디렉토리를 가져 오는 방법 javascript와 같은 특정 디렉토리를 복제하거나

git이있는 프로젝트가 있고 subversion과 마찬가지로 myproject / javascript와 같은 특정 디렉토리를 복제하거나 가져 오려고합니다.
변경하고 커밋 한 후 다시 푸시하십시오.
있을 수있다?



답변

  1. 당신의 repo 사본의 상단에 cd
  2. git fetch
  3. git checkout HEAD path/to/your/dir/or/file

    • path/...(3)의 ” “은 (는)” .../file“을 포함하는 저장소 루트 바로 아래의 디렉토리에서 시작합니다.

    • “HEAD”대신 특정 커밋의 해시 코드가 사용될 수 있으며, 해당 커밋에 특정한 개정 (파일) 또는 개정 (dir)을 얻게됩니다.


답변

빈 디렉토리에서 :

git init
git remote add [REMOTE_NAME] [GIT_URL]
git fetch REMOTE_NAME
git checkout REMOTE_NAME/BRANCH -- path/to/directory

답변

찾기, 포기, 다시 시도하지 않는 대답을 많이 찾은 후에 마침내 다른 SO 스레드에서 이에 대한 해결책을 찾았습니다.

하나의 폴더를 제외한 모든 폴더를 git-pull하는 방법

존재하는 내용을 복사하여 붙여 넣기 :

git init
git remote add -f origin <url>
git config core.sparsecheckout true
echo <dir1>/ >> .git/info/sparse-checkout
echo <dir2>/ >> .git/info/sparse-checkout
echo <dir3>/ >> .git/info/sparse-checkout
git pull origin master

OP가 원하는 것을 수행하려면 (하나의 디렉토리에서만 작동) .git/info/sparse-checkout위의 단계를 수행 할 때 하나의 디렉토리를 추가 하십시오.

@cforbish 덕분에 많은 감사합니다!


답변

불가능합니다. 모든 저장소를 가져 오거나 아무것도 필요하지 않습니다.


답변

이 명령이 도움이 될 수 있습니다.

git archive --remote=MyRemoteGitRepo --format=tar BranchName_or_commit  path/to/your/dir/or/file > files.tar

“이봐 요”


답변

디렉토리를 입력하지 않고 최신 변경 사항을 얻으려면 다음을 수행하십시오.

$ git -C <Path to directory> pull

답변

git clone --filter 힘내 2.19에서

이 옵션은 실제로 서버에서 불필요한 객체 가져 오기를 건너 뜁니다.

현재 지원 상태를 설명하는 자세한 답변을 Git 리포지토리의 하위 디렉터리 만 복제하려면 어떻게합니까?

git clone해당 영역에서 구현되는 모든 항목 에도 git pull아날로그 가있을 가능성이 큽니다 .