라이브 사이트 (비 베어 git 저장소)를 미러링하기 위해 git 저장소를 만들었습니다.
git clone --mirror ssh://user@example.com/path/to/repo
이제이 미러 클론을 원격 원점의 모든 변경 사항으로 업데이트하려면 어떤 명령을 사용해야합니까?
커밋, 심판, 후크, 분기 등 모든 것을 최신 상태로 유지하고 싶습니다.
감사!
답변
이것은 미러에서 실행해야하는 명령입니다.
git remote update
답변
커밋, 심판, 브랜치 및 ” et cetera ” 와 관련하여 Magnus 답변은 작동합니다 (git remote update
).
그러나 불행히도 후크 를 clone
/ 미러 / 후크하는 방법은 없습니다update
내가 원한 것처럼 …
후크 복제 / 미러링에 대한이 흥미로운 스레드를 발견했습니다.
http://kerneltrap.org/mailarchive/git/2007/8/28/256180/thread
나는 배웠다:
-
후크는 저장소 내용의 일부로 간주되지 않습니다.
-
.git/description
폴더와 같이 후크처럼 복제되지 않는 더 많은 데이터가 있습니다 . -
hooks
디렉토리에 나타나는 기본 후크 는TEMPLATE_DIR
-
template
자식 에이 흥미로운 기능 이 있습니다 .
따라서 저는이 “복제 고리 (clone the hooks thing)”를 무시하거나 rsync
내 거울의 목적에 따라 전략을 시도 할 수 있습니다 (다른 클론의 백업 + 소스 만 해당).
글쎄 … 난 그냥 후크 복제를 잊고 git remote update
길을 고수합니다 .
- Sehe는 “후크”가
clone
/update
프로세스에 의해 관리 될 뿐만 아니라 스 태쉬, 재 호출 등도 수행 한다는 것을 지적했다 . 따라서 엄격한 백업rsync
이나 그에 상응하는 것이 실제로 갈 길이다. 필자가 말한 것처럼 (내가 후크, 숨김 등을 가질 여유가 없기 때문에) 실제로는 필요하지 않기 때문에remote update
.
감사! 내 자신의 “git-fu”조금 개선 : 🙂
답변
여기를 보아라: Git은 후속 클론의 모든 분기를 복제하지 않습니까?
당신이 정말로 대신에 가지를 당겨서 이것을 원한다면 push --mirror
여기를 살펴볼 수 있습니다.
git bare 저장소의 “fetch –all”은 로컬 브랜치를 원격 브랜치와 동기화하지 않습니다.
이 답변은 비교적 쉽게 달성하는 방법에 대한 자세한 단계를 제공합니다.