완전한 레포를 묶는 방법
완전한 레포를 네트워크가 아닌 새로운 기계로 전송해야 하는데, 단일 파일 개체로 사용하는 것이 좋습니다.깃 번들을 사용하면 다음과 같은git fetch
,git pull
스니커넷 환경에서 스타일 작업을 수행하지만 대상 시스템에 이미 작업 버전의 레포가 있다고 가정하는 것으로 보입니다.
올바른 호출 방법:
- 현재 Repo에 있는 모든 분기 번들
- 대상 디렉터리에서 새 레포를 시작합니다. 즉, 루트 커밋을 올바르게 설치합니다.
다음 사항을 명확히 하기 위해 패치를 업스트림으로 보냈습니다.
`git clone` can use any bundle created without negative refspecs
(e.g., `new`, but not `old..new`).
If you want to match `git clone --mirror`, which would clone other
refs such as `refs/remotes/*`, use `--all`.
If you want to provide the same set of refs that a clone directly
from the source repository would get, use `--branches --tags` for
the `<git-rev-list-args>`.
그렇게$ git bundle create repo.bundle --branches --tags
베스트 매치 클로닝.
$ git bundle create repo.bundle --all
원격 참조를 포함한 소스 시스템의 미러 이미지를 제공합니다.
올바른 호출 방법:
- 현재 Repo에 있는 모든 분기 번들
단순:
$ git bundle create repo.bundle --all
여기서repo.bundle
은 만들 번들 파일의 이름입니다.:--all
원격 추적 지점을 포함하지 않을 겁니다 도 그러지것처럼 입니다.보통의 복제인간들도 하지 않는 것처럼 말입니다.
- 대상 디렉터리에서 새 레포를 시작합니다. 즉, 루트 커밋을 올바르게 설치합니다.
,clone
정당합니다init
+fetch
(+ 관리).
할 수 곳에서 할 수 , URL을 사용할 수 clone
번들 파일에서:
$ git clone repo.bundle
가 합니다.repo
깃 저장소로서
합니다.--mirror
선택.
git clone --mirror git@example.org:path/repo.git
이렇게 하면 모든 원격 분기점도 번들링할 수 있는 로컬 분기점이 됩니다.
그다음달리기
git bundle create repo.bundle --all
ę브스키이의 와 같이.
에게 tar zip 합니다를 합니다. 그리고 그것을 새로운 위치에 간단히 풀고 그 후에.git reset --hard HEAD
한 모든 에 있는 모든 분기에 필요한 모든 작업은 .git 아래에 있으며 .git/config 파일의 리모컨을 조정하거나 제거하기만 하면 됩니다.
tar cf myrepo.tgz .git
cp myrepo.tgz [USB_STICK]
... move to new machine ...
mkdir myrepo && cd myrepo
tar xpf [USB_STICK]/myrepo.tgz
git reset --hard HEAD
( Git 2.34 (2021 4 ) 로,git bundle create
다음 사항을 추가로 명확히 합니다.
1d9c8da 커밋, 0bb92f3 커밋, 9ab80d 커밋, 5c8273d 커밋 (2021년 7월 31일) æ바르 아른피외르 ð 뱌르마손 ( ) 참조.
(2021년 8월 24일 주니오 C 하마노 ---- 커밋 f19b275)
bundle doc
사물의 전제 조건을bundle doc
상세히 설명합니다.사인-오프: æ바르 아른피외르 ð 비아르마손
"객체 전제조건"에 대한 논의를 자체 섹션으로 나누고, 일반적인 사례의 몇 가지 예를 추가합니다.
여기서 변경되는 문서의 소개는 2e0afaf("Add git-bundle: archive에 의한 객체 및 참조 이동", 2007-02-22, Git v1.5.1-rc1 -- merge)를 참조하십시오.
객체 필수조건
번들을 생성할 때 공통 히스토리가 없는 저장소에서 번들링을 해제할 수 있는 자체 포함 번들을 생성할 수 있을 뿐만 아니라 기록의 초기 부분에서 필요한 개체를 제외하기 위해 부정적인 수정사항을 제공할 수도 있습니다.
다음과 같은 개정사항을 제공합니다.
new
로.git bundle create
수정판에서 연결할 수 있는 모든 개체가 포함된 번들 파일을 생성합니다.new
. 해당 번들은 모든 저장소에서 번들링을 해제하여 개정으로 이어지는 전체 기록을 얻을 수 있습니다.new
:$ git bundle create full.bundle new
다음과 같은 개정 범위
old..new
수정이 필요한 번들 파일을 생성할 것입니다.old
(및 이로부터 도달할 수 있는 모든 객체) 번들은 "unbundle"이 가능하도록 존재합니다.$ git bundle create full.bundle old..new
사전 요구 사항이 없는 자체 포함 번들은 어디서든, 심지어 빈 저장소로 추출하거나 (즉, 에서) 클로닝할 수 있습니다.
new
, 그러나 그렇지는old..new
).
git bundle verify' 명령을 사용하여 수신자 저장소에 번들에 필요한 필수 전제 조건 커밋이 있는지 확인할 수 있습니다.
언급URL : https://stackoverflow.com/questions/11792671/how-to-git-bundle-a-complete-repo
'source' 카테고리의 다른 글
PowerShell 단계를 통해 느린 시작 수정 (0) | 2023.10.02 |
---|---|
AJAX 및 양식인증, 양식을 방지하는 방법인증이 HTTP 401을 재정의합니까? (0) | 2023.10.02 |
ASP.net 페이지가 http인지 https인지 확인합니다. (0) | 2023.10.02 |
SQL에서 루프 내에서 테이블에 300번 삽입하려면 어떻게 해야 합니까? (0) | 2023.10.02 |
WordPress의 사용자 지정 게시물 유형에 기능 추가 (0) | 2023.10.02 |