Тип Blob
предоставляет имущество Content
, которое возвращает byte[]
.
Следующее испытание в извлеченном из BlobFixture.cs файлах и демонстрирует использование этого имущества.
[Test]
public void CanReadBlobContent()
{
using (var repo = new Repository(BareTestRepoPath))
{
var blob = repo.Lookup<Blob>("a8233120f6ad708f843d861ce2b7228ec4e3dec6");
byte[] bytes = blob.Content;
bytes.Length.ShouldEqual(10);
string content = Encoding.UTF8.GetString(bytes);
content.ShouldEqual("hey there\n");
}
}
В данном конкретном тесте Blob GitObject непосредственно получен с помощью метода LookUp()
. Вы также можете получить доступ к Blobs из свойства Files
файла Tree
.
Что касается вашего более конкретного запроса, следующий тест блока должен показать вам как доступ к необработанным байтам Blob от кончика Branch
.
[Test]
public void CanRetrieveABlobContentFromTheTipOfABranch()
{
using (var repo = new Repository(BareTestRepoPath))
{
Branch branch = repo.Branches["br2"];
Commit tip = branch.Tip;
Blob blob = (Blob)tip["README"].Target;
byte[] content = blob.Content;
content.Length.ShouldEqual(10);
}
}
Примечание: Этот тест показывает другой способ Доступ к Blob
(как абстрактное TreeEntry
). Таким образом, использование броска.
Awesome. Спасибо приятель! – Nick
Рад, что я смог вам помочь :) – nulltoken
Также .. просмотр тестов - хорошая идея. – Nick