首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何设置subgit在重启后工作

如何设置subgit在重启后工作
EN

Stack Overflow用户
提问于 2017-04-18 14:48:43
回答 2查看 1.3K关注 0票数 3

我正在尝试使用subgit工具将我们的subversion存储库转换为git。我成功地建立了subversion to git存储库,它已经正常工作了一段时间,但在我重新启动工作站后,subversion的更改停止出现在git中。我再次运行了subgit install,现在它可以工作了,但我认为这不是正确的方式。如何设置subgit以使其在重启后继续工作?

EN

回答 2

Stack Overflow用户

发布于 2017-05-23 19:51:12

实际上,SubGit运行一个守护进程来检查新的SVN更改(缺省情况下每分钟一次)。如果不是在每次Git推送时启动,守护程序会自动启动,所以如果Git推送到您的存储库的次数足够频繁,并且您并不太关心立即有新的SVN更改,那么您可以什么也不做,第一次Git推送时守护程序将启动。

但是,如果让Git存储库保持最新对您来说很重要,那么您需要运行

代码语言:javascript
复制
$ subgit fetch --async /path/to/git/repository

当系统启动时。该命令将启动守护进程,使存储库与SVN同步。请注意,代表同一用户运行所有SubGit命令非常重要(该用户还应该是/path/ to /git/存储库的所有者;如果您使用的是GitLab,则通常为"git“;如果您使用的是Apache和git-http-backend,则为"www-data”)。

其中一种方法是创建启动SubGit守护进程的init.d脚本

代码语言:javascript
复制
$ su -u git subgit fetch --async /path/to/git/repository

并通过以下方式停止它:

代码语言:javascript
复制
$ su -u git subgit shutdown /path/to/git/repository

如果您系统是debian,您可以使用this init.d脚本生成器。

我是SubGit开发人员之一。

票数 6
EN

Stack Overflow用户

发布于 2019-02-09 06:38:31

这只是Dmitry-pavlenko声明的一个扩展,通过systemd,我能够遵循this post并执行以下操作来将subgit添加到我的gitlab容器中的systemd中:

代码语言:javascript
复制
echo '[Unit]
Description=Kick off subgit daemon on boot

[Service]
Type=oneshot
ExecStart=/bin/sh -c "echo OFF > subgit fetch --async /var/opt/gitlab/git-data/repositories/ProjectGroup/RepoName.git"

[Install]
WantedBy=multi-user.target' > /etc/systemd/system/subgit.service

systemctl enable subgit.service

将ProjectGroup和RepoName替换为您运行的任何subgit安装代码库使用的值,这将创建一个服务文件并将其添加到系统启动中。

我是unix系统的新手,所以如果您对上面的内容有任何更改或建议,请随时建议/添加/更改!也感谢上面提供的很好的信息。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43465423

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档