Rugged::Commit类怎么使用
Rugged::Commit类怎么使用
Rugged::Commit类用于提交对象,包括提交信息和提交对象的树。它还可以用于检索提交对象的父对象,以及提交对象相关的日志信息。
使用 Rugged::Commit 类的最简单方法是通过 Rugged::Repository#lookup 方法检索提交对象:
```ruby
commit = repo.lookup('9d09060c4cbaf90f5a7b723ff11a6241208224ec')
```
要创建一个新的提交对象,需要提供提交信息(包括作者和提交者的名称和邮件地址,以及提交日期)和提交对象的树:
```ruby
author = { :email => 'schacon@gmail.com', :time => Time.now, :name => 'Scott Chacon' }
committer = { :email => 'schacon@gmail.com', :time => Time.now, :name => 'Scott Chacon' }
Rugged::Commit.create(
:repository => repo,
:author => author,
:committer => committer,
:message => "Bump to 0.9.5",
:parents => ["5cb0af40e5f0a91fe2d13f84f5ab4b2db04de566"],
:tree => "f60079018b664e4e79329a7ef9559c8d13f3a3f7"
)
```
提交对象的树是提交对象包含的文件和目录的集合。要创建一个树对象,需要提供要包含在树中的文件和目录的路径和内容:
```ruby
tree = repo.write("tree", :blob)
```
要检索提交对象的父对象,可以使用 Rugged::Commit#parent 方法:
```ruby
commit.parent
```
要检索提交对象相关的日志信息,可以使用 Rugged::Commit#log 方法:
```ruby
commit.log
```
相关文章