動作
如何讓您的 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