2014-03-04 5 views
1

을 사용하여 일부 대형 GitHub 저장소의 아카이브를 다운로드했습니다. ZIP 링크를 다운로드하십시오. 여기에는 소스 코드 만 포함되어 있으므로 복제본이나 git repo가 ​​아닙니다. 그런 다음이 코드에서 내 디스크에 몇 가지 내용을 변경했으며 이제는 원래 GitHub 레포 (ZIP 파일을 다운로드 한 이후로 변경됨)의 HEAD 개정 코드를 사용하여 업데이트하려고합니다. 그러나 그것은 큰 repo이므로 모든 파일을 다운로드하지 않고 수정 된 파일 만 다운로드하려고합니다. ZIP 파일로 다운로드 한 GitHub 프로젝트를 업데이트하는 방법은 무엇입니까?

난 후, 기존 소스 코드 폴더에 git add .git commit 다음 git remote add origin https://github.com/someuser/someproject.gitgit pull origin master 새로운 REPO을 git init해야 하는가? 이 파일은 수정 된 파일 만 다운로드 할 수 있습니까?

답변

1

수정 된 파일 만 다운로드합니까?

아니요, Git은 항상 와 함께 작동합니다.은 repo 파일입니다. 귀하의 경우에는 자식이 거의 빈 repo (당 하나의 개정판) 당겨 여전히 개정판을 가져올 것입니다.

repo를 복제하는 것이 더 쉽습니다 (큰 경우에도). git add 수정본을 복사하고 커밋 및 푸시 : 수정 된 파일 만 푸시합니다.

Git 1.9.0에서 이제는 얕은 복제본을 푸시 할 수 있기 때문에 얕은 복제본 (마지막 버전 만 복제)을 고려할 수 있습니다.
"How to git fetch efficiently from a shallow clone"을 참조하십시오.

+0

그래서 로컬 파일이 수정되지 않은 경우에도,'자식 pull' 항상 전체 REPO를 다운로드합니까? – niutech

+0

@niu no, git clone 않습니다. git pull은 델타 만 당깁니다. – VonC

+0

그러면 왜'git pull'은 수정 된 파일 만 다운로드하지 않을 것이라고 대답하십니까? 나는 repo를 복제하고 싶지 않고, 로컬 repo를 초기화하고 원격 저장소와 병합하여 변경된 파일 (델타) 만 다운로드하도록합니다. 가능한가? – niutech

관련 문제