有什么方法可以在Redmine(或其他问题跟踪器)和纯文本待办事项列表之间同步吗?
我想通过一个简单的基于文本的界面访问Redmine任务库 - 想知道最短路径是什么(最小投资/开发)。
现在,这可以归结为 2 个用例/阶段:
从简单的 wiki 将一批任务导入 Redmine基于项目符号的 TODO 列表,即。纯文本内容。这更像是一项一次性任务,因此快速而肮脏的解决方案就可以了。
稍后,一些平滑的双向同步会很棒。例如,通过编辑器中的一些友好的纯文本(或 XML)编辑任务负载,或者编写脚本,我可以通过简单的文本处理来操纵所有任务;然后与Redmine同步并提交回来。
关于实现这些目标的最简单方法有什么想法吗?
我更喜欢一种外部解决方案(即不接触服务器),特别是对于一次性导入的情况;像一个简洁的 IDE/编辑器/客户端,或者一个独立的 Ruby 脚本(例如使用 RM API)。 如果有合适的 RM 插件可用,我会忍不住尝试一下(可以从我们可爱的 IT 支持人员那里获得 root 访问权限:).. 目前的想法:
- Emacs/Org-mode,看起来像是一个很酷的任务管理器 UI 和完整的纯文本功能的完美结合。它似乎足够丰富来捕获标签和状态。这篇文章看起来很有前途 Orgmode 和 Roundup:桥接公共bugtrackers 和本地任务列表,尽管并不完全匹配。
- Ruby 中的 org-mode 解析器,可以在具有 redmine-api 访问权限的脚本中使用,或者 - 最坏的情况(对我来说,现在) - 在新开发的 RM 插件中.. 这看起来是一个好的开始: org-ruby
- 导出 RM->XML,处理文件,导入 XML->RM。 ..不确定这是否受支持? 我想总是可以直接与数据库交谈,但我宁愿避免这种情况。
事实上,我也对 Bugzilla 的类似解决方案感兴趣。
I would like to access a Redmine taskbase via a simple text based interface - wondering what the shortest path would be (minimum investment/development).
Right now, this boils down to 2 use cases/phases:
Import a batch of tasks into Redmine from simple, wiki-based, bulletted TODO list, ie. plain text content. This is more of a one-off task, so a quick and dirty solution would be fine.
Later, some smooth two-way synchrosation would be great.. E.g. edit loads of tasks via some friendly plain text (or XML) in an editor, or scripting where I could manipulate all of them with simple text processing; then synchronise with Redmine and commit them back.
Any ideas on the easiest way to achieve these?
I'd prefer an external solution (i.e not touching the server), especially for the one-off import case; something like a neat IDE/editor/client, or a standalone Ruby script (e.g using the RM API).
If an appropriate RM plugin would be available, I would not resist giving it a try (can get root access from our lovely IT support:)..
Current ideas:
- Emacs/Org-mode, looks like a great combination of a cool task manager UI and full plain text power. It seems rich enough to capture tags, states as well. This artice looks promising Orgmode and Roundup: Bridging public bugtrackers and local tasklists, although not exactly a perfect match.
- org-mode parser in Ruby, could be used in an script with redmine-api access, or - worst case(for me, right now)- in newly developed RM plugin.. This looks like a good start: org-ruby
- export RM->XML, process file, import XML->RM... not sure if this is supported?
I guess it's always possible to talk to the DB directly, but I'd prefer to avoid that.
Actually, I'm also interested a similar solution for Bugzilla.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
也许这可能有用: https://github.com/fukamachi/redmine-el
Maybe this can be useful: https://github.com/fukamachi/redmine-el
在最简单的层面上,您可以编写一个 RM/Rails 插件来解析 Org-Mode 任务列表,更新 RM 模型中的相应问题。
同样,您可以为 Redmine(同样作为 Rails 插件)构建一个视图,以生成当前(或部分)问题的组织列表。
对于 Bugzilla,我认为您最好使用 XML-RPC 接口来进行问题比较/更新同步,因此您必须采取与 Redmine 非常不同的方法。
如果您有任何具体问题,请更新您的问题,目前它非常广泛。
更新
目前,有一些插件可能会帮助您找到解决方案,例如 Nick Boltons xml import< /a> 和 Martin Liu 的 Redmine CSV 导入插件但这些都不能完全解决你的问题,只是给你一些有用的起点。
另一方面,如果你编写一个与Redmine的REST api交互的脚本,你不需要它使用任何特定的语言,事实上你可以在Emacs-lisp中完成,如果脚本的目标用户都是Emacs 知道,那么这很可能是完成这项工作的最佳方式。 (这对我来说肯定是最有吸引力的选择。)
At the simplest level, you could write a RM/Rails plugin that parses an Org-Mode task list, updating corresponding issues in the RM Model.
Equally, you can build a view for Redmine (again as a Rails plugin) to generate an org list of the current (or subset of) issues.
For Bugzilla I think you would be best off using the XML-RPC interface to do your issue comparison/update sync, so you'd have to take a very different approach from Redmine.
If you have any specific questions, please update your question, it's quite broad at the moment.
Update
At the moment, there are a few plugins which will probably help you figure out your solution, for example Nick Boltons xml import and Martin Liu's Redmine CSV Import Plugin but neither of these are going to completely solve the problem for you, just give you some useful starting point.
On the other hand, If you write a script that interacts with Redmine's REST api, you don't need it to be in any specific lanugage, in fact you could do it in Emacs-lisp, if the target users of the script are all Emacs aware, then this might well be the best way to do the job. (it would certainly be the most appealing option to me.)