git最好的ruby api是什么?

mli*_*elt 6 ruby git api windows-7

我想实现一个Rake任务,它可以自动执行我必须做的一些任务,将我的更改从开发转移到生产(是的,我知道像Capistrano这样的东西,对我来说太过分了).在中心,有一些交互式命令,如git add -i一系列提交和推送.在生产方面,将会有拉动和资产任务.

一直输入相同的命令是很繁琐的,所以我想完全自动化它.我没有找到的是Git Ruby API.

它应该在Windows 7下正常工作,并允许至少以下命令:git add,git status,git commit,git push,git pull.

mli*_*elt 10

我知道,坏习惯,但我想记录本周末的经历:

  • https://softwareengineering.stackexchange.com/questions/62843/best-ruby-git-library上有一个类似的问题,它列出了3个相关的候选人:Git,GritRugged.
  • Git和Grit没有进一步发展,Rugged目前已经开发,但尚未完成.
  • Git开箱即用,但有一些不足之处:
    • 存在已知的缺点(参见问题).
    • 我遇到了问题,添加和更改的项目不匹配,它们只能处于2种状态中的一种(目前Git不适用).
    • API是合理的,并且在控制台,Ruby脚本或Rake任务中运行良好.
  • Grit根本不适合我,我没有找到原因.我有堆栈跟踪(低级别),并尝试了一些可能与Windows 7下的使用相关的补丁,但没有成功.
  • Rugged对我来说是不可安装的,所以我坚固耐用的人提出了一个bug,得到了一些反馈.问题似乎是坚固只适用于POSIX系统,所以它不能与DevKit for Ruby编译.

所以我将尝试找到libgit2.dll适用于Windows 7 的编译版本,并尝试使用它.我过去曾经这样做过sqlite3.dll,所以也许这是最好的尝试.对我来说,坚固耐用是最明智的解决方案,因为该项目背后有人,​​他们有兴趣提供跨平台工作的解决方案.


Sco*_*hea 5

这个似乎很受欢迎.如果你对GitHub更感兴趣,那么你可能想看看这个.

更新:

Rugged似乎是最新的那个,虽然Gem for it还没有建成一段时间.可能最好使用Github的源代码.