Ruby / Rugged如何在git fetch之后保存更改?

时间:2016-04-14 17:07:22

标签: ruby git rugged

所以,我想用坚固的方式执行git pull,所以我进行了一次获取和合并:

require 'rugged'

 certificat = Rugged::Credentials::SshKey.new({username: 'git', privatekey: 'path/to/privatekey', publickey: 'path/to/publickey' })

  repo = Rugged::Repository.new("/tmp/git")
  repo.checkout('master')

  # git fetch

  remote = repo.remotes['origin']
  remote.fetch(credentials: certificat)
  remote.save # save new data

  # git merge

  commit = repo.branches['origin/master'].target
  repo.references.update(repo.head, commit.oid)

但是我的保存方法有这个错误:

undefined method `save' for #<Rugged::Remote:0x0000000135d6e8> (NoMethodError)

我不明白为什么特别是保存方法在Rugged doc(here)中

有人知道为什么吗?

编辑:好的,所以这个文档已经过时,方法保存不再存在。我认为我的合并是不完整的,有人知道吗?

EDIT2:我只是在这段代码的末尾添加了这一行,并且它的工作正在进行中!

repo.checkout_head({strategy: :force})

0 个答案:

没有答案