如何使用Subgit挂钩SVN更新

时间:2014-01-17 13:21:51

标签: git subgit

我设置Subgit以在SVN和Git之间同步 Subgit运行一个守护进程来监听SVN更新。

我想在守护进程将SVN合并到Git存储库后运行一些东西,
我该怎么办?

1 个答案:

答案 0 :(得分:2)

SubGit 2.0.x在从Subversion存储库获取新版本时不会触发任何钩子。有一项功能请求,请随时提出:SGT-360

作为一种解决方法,我建议您使用定期运行以下命令的cron作业:

subgit fetch <GIT_REPO>
SubGit <version>
Translating SVN revisions to Git commits...
  rN => <hash>
Done.

您还可以通过运行以下命令远程触发Git-SVN同步:

$ cd <working_tree> && git push <remote> +:refs/subgit/command/fetch-sync
remote: Synchronizing SVN and Git...
remote:   translating SVN revisions to Git commits...
remote:     translated revision N to commit <hash>
remote: ... done.

可以通过解析其输出来了解SubGit是否获取了新的SVN修订版。

如果您打算使用此类定期工作,则禁用后台翻译流程是有意义的,因为它不再需要:

$ edit <GIT_REPO>/subgit/config
# [daemon]
#     idleTimeout = 0
$ subgit install <GIT_REPO>
相关问题