← 기사 목록
한국어https://news.hada.io/rss/news

git-sync - 로컬 체크아웃 없이 Git 리모트 간 ref를 직접 미러링하는 CLI 도구

추출된 키워드

36
Git·5git-sync·5CLI 도구·4리모트·4ref·4미러링·4동기화·3Smart HTTP/HTTPS·3Go 라이브러리·3CI/자동화 파이프라인·3타입드 JSON 출력·3로컬 materialize·3git-sync replicate·3git-sync plan·3git-sync sync·3--materialized-max-objects·3로컬 체크아웃·3go-git·3Materialized 폴백·3receive-pack·3upload-pack·3Relay 전송 경로·3MIT 라이선스·2SSH·2단방향 전용·2안정 API·2Replicate·2Sync·2Plan·2Probe·2--prune·2--force·2fetch·2팩파일 인코딩·2시딩·2푸시·2

원문

1,218
git-sync - 로컬 체크아웃 없이 Git 리모트 간 ref를 직접 미러링하는 CLI 도구

(github.com/entireio)

git-sync - 로컬 체크아웃 없이 Git 리모트 간 ref를 직접 미러링하는 CLI 도구

  • 로컬 클론 필요없이소스 리모트에서 타겟 리모트로 ref와 오브젝트를 직접 스트리밍하며, 로컬 디스크에 저장소를 체크아웃하지 않음
  • Relay 전송 경로로 소스
    upload-pack
    팩 데이터를 타겟
    receive-pack
    으로 바로 흘려보내, 저장소 크기와 무관하게 메모리 사용량은 일정함
  • relay가 불가능한 경우(force, prune, delete 등) Materialized 폴백으로 인메모리
    go-git
    스토어에 오브젝트를 fetch 후 팩파일 인코딩 및 푸시,
    --materialized-max-objects
    로 메모리 제한 가능
  • git-sync sync
    하나로빈 타겟 초기 시딩부터 지속적 동기화까지 처리하며,
    git-sync plan
    으로 푸시 전 미리보기 가능
  • git-sync replicate
    는 타겟 ref를 소스와 완전히 일치시키되,로컬 materialize가 필요하면 실패처리하는 엄격 모드
  • ref 생성, 업데이트,
    --force
    강제 업데이트,
    --prune
    삭제 등모든 ref 관리 액션지원
  • 모든 액션을 푸시 전에 계획하고 타입드 JSON 출력을 제공해 CI/자동화 파이프라인에 바로 연결 가능
  • Go 라이브러리로도 임베딩 가능하며,
    Probe
    ,
    Plan
    ,
    Sync
    ,
    Replicate
    안정 API제공
  • 단방향 전용, SSH 미지원(Smart HTTP/HTTPS만), 데몬/감시 기능 없이 원샷 실행 방식
  • MIT 라이선스