是否有相當於Git中的「svnrdump dump --incremental」?GIT相當於「svnrdump dump --incremental」
我想從遠程服務器增量備份幾個svn和git倉庫到本地服務器,但似乎沒有直接的方式來「轉儲」遠程GIT倉庫。
基本上我執行任何「混帳取--all」與已經存在的或「混帳克隆--mirror」爲所有新的回購,其次是「混帳束創建--all」。
是否還有其他更好的解決方案?
是否有相當於Git中的「svnrdump dump --incremental」?GIT相當於「svnrdump dump --incremental」
我想從遠程服務器增量備份幾個svn和git倉庫到本地服務器,但似乎沒有直接的方式來「轉儲」遠程GIT倉庫。
基本上我執行任何「混帳取--all」與已經存在的或「混帳克隆--mirror」爲所有新的回購,其次是「混帳束創建--all」。
是否還有其他更好的解決方案?
一旦full bundle is created,您可以創建新的增量捆綁。
我已經在this answer中提到了一個script to make incremental bundles(除了一次wekk一個完整的包)爲我所有的回購。
echo "Create INCREMENTAL backup for '${name}' (previous was ${_dd}-${_dt}[${s}]" >> "${logf}"
echo "${nowd} Create INCREMENTAL backup for '${name}' (previous was ${_dd}-${_dt}[${s}]" >> "${logfb}"
git -C "${path}" bundle create "${bkp}/${name}-${nowd}-${describe}-incr.bundle" --since=${nbd}.days.ago --all
status=$?
的OP確認in the comment:
最後我做一個 「
git bundle create
」 「git fetch --all
」 後,和/或 「git clone --mirror
」
這個問題是熱鬧。 Git(僅僅是作爲一個DVCS)本質上總是一種「增量備份」。有人可能會說這是總是「傾銷」。如果設置了遠程(即,您已經克隆了遠程存儲庫),則git fetch
/git pull
會使其保持最新狀態。
如果您需要將存儲庫打包爲單個文件,我建議您查看一個名爲tar
的程序。如果你確定你想要一個完整的鏡像(跟蹤相同的遙控器),將一個git倉庫轉儲到一個文件:tar c .git > /path/to/my-repo-tarball.tar
。
感謝您的提示,VonC!我在「git fetch --all」和/或「git clone --mirror」之後做了一個「git bundle create」。不知道,但在我看來,最接近我最初的請求的解決方案... – user3752299
@ user3752299好吧,我已經包括在更多的知名度的答案你的結論。 – VonC