專案

一般

個人檔案

動作

如何讓您的 Redmine git 版本庫保持同步

使用較新版本的 git (>=1.6.0)

在以下範例中,"git_user" 和 "project.git" 應修改為您的 GitHub 專案

設定來源版本庫的(bare)鏡像

git clone --mirror git@github.com:git_user/project.git

以取得變更

cd project.git
git fetch -q --all -p

透過安裝 cron 作業讓提取自動化

sudo vi /etc/cron.d/sync_git_repos
*/5 * * * * app cd /path/to/project.git && git fetch -q --all -p

*/5 在最後一行定義同步發生的分鐘數,例如 */2 會導致同步每兩分鐘發生一次。 */5 會導致同步發生在可被 5 整除的分鐘數(5、10、15 等)

使用舊版 git

這是一個由 Farzy(Farzad FARID)撰寫的操作指南,說明如何讓兩個 git 版本庫保持同步

以上部落格文章摘要

git clone --bare git@github.com:git_user/project.git project.git
cd project.git
git remote add origin git@github.com:git_user/project.git
git fetch -v
git fetch origin
git reset --soft refs/remotes/origin/master 

在此 cron 指令碼中,“app” 是 project.git 目錄的擁有者

sudo vi /etc/cron.d/sync_git_repos
# One-way synchronization of a local and remote bare Git repository.
# Repeat this line for each repository.
*/5 * * * * app cd /path/to/project.git && git fetch origin && git reset --soft refs/remotes/origin/master > /dev/null

Ulf Unger超過 10 年前 更新 · 12 個修訂