mirror of
https://github.com/NixOS/nix
synced 2025-06-26 20:01:15 +02:00
smudgeLfs: Use default value
Eventually this should probably become a struct of options.
This commit is contained in:
parent
c02fcebb30
commit
d4ecf15dad
5 changed files with 14 additions and 11 deletions
|
@ -79,7 +79,7 @@ TEST_F(GitUtilsTest, sink_basic)
|
||||||
// sink->createHardlink("foo-1.1/links/foo-2", CanonPath("foo-1.1/hello"));
|
// sink->createHardlink("foo-1.1/links/foo-2", CanonPath("foo-1.1/hello"));
|
||||||
|
|
||||||
auto result = repo->dereferenceSingletonDirectory(sink->flush());
|
auto result = repo->dereferenceSingletonDirectory(sink->flush());
|
||||||
auto accessor = repo->getAccessor(result, false, false);
|
auto accessor = repo->getAccessor(result, false);
|
||||||
auto entries = accessor->readDirectory(CanonPath::root);
|
auto entries = accessor->readDirectory(CanonPath::root);
|
||||||
ASSERT_EQ(entries.size(), 5);
|
ASSERT_EQ(entries.size(), 5);
|
||||||
ASSERT_EQ(accessor->readFile(CanonPath("hello")), "hello world");
|
ASSERT_EQ(accessor->readFile(CanonPath("hello")), "hello world");
|
||||||
|
|
|
@ -485,13 +485,15 @@ struct GitRepoImpl : GitRepo, std::enable_shared_from_this<GitRepoImpl>
|
||||||
/**
|
/**
|
||||||
* A 'GitSourceAccessor' with no regard for export-ignore or any other transformations.
|
* A 'GitSourceAccessor' with no regard for export-ignore or any other transformations.
|
||||||
*/
|
*/
|
||||||
ref<GitSourceAccessor> getRawAccessor(const Hash & rev, bool smudgeLfs);
|
ref<GitSourceAccessor> getRawAccessor(
|
||||||
|
const Hash & rev,
|
||||||
|
bool smudgeLfs = false);
|
||||||
|
|
||||||
ref<SourceAccessor> getAccessor(
|
ref<SourceAccessor> getAccessor(
|
||||||
const Hash & rev,
|
const Hash & rev,
|
||||||
bool exportIgnore,
|
bool exportIgnore,
|
||||||
std::string displayPrefix,
|
std::string displayPrefix,
|
||||||
bool smudgeLfs) override;
|
bool smudgeLfs = false) override;
|
||||||
|
|
||||||
ref<SourceAccessor> getAccessor(const WorkdirInfo & wd, bool exportIgnore, MakeNotAllowedError e) override;
|
ref<SourceAccessor> getAccessor(const WorkdirInfo & wd, bool exportIgnore, MakeNotAllowedError e) override;
|
||||||
|
|
||||||
|
@ -610,7 +612,7 @@ struct GitRepoImpl : GitRepo, std::enable_shared_from_this<GitRepoImpl>
|
||||||
|
|
||||||
Hash treeHashToNarHash(const Hash & treeHash) override
|
Hash treeHashToNarHash(const Hash & treeHash) override
|
||||||
{
|
{
|
||||||
auto accessor = getAccessor(treeHash, false, "", false);
|
auto accessor = getAccessor(treeHash, false, "");
|
||||||
|
|
||||||
fetchers::Cache::Key cacheKey{"treeHashToNarHash", {{"treeHash", treeHash.gitRev()}}};
|
fetchers::Cache::Key cacheKey{"treeHashToNarHash", {{"treeHash", treeHash.gitRev()}}};
|
||||||
|
|
||||||
|
@ -1187,7 +1189,9 @@ struct GitFileSystemObjectSinkImpl : GitFileSystemObjectSink
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
ref<GitSourceAccessor> GitRepoImpl::getRawAccessor(const Hash & rev, bool smudgeLfs)
|
ref<GitSourceAccessor> GitRepoImpl::getRawAccessor(
|
||||||
|
const Hash & rev,
|
||||||
|
bool smudgeLfs)
|
||||||
{
|
{
|
||||||
auto self = ref<GitRepoImpl>(shared_from_this());
|
auto self = ref<GitRepoImpl>(shared_from_this());
|
||||||
return make_ref<GitSourceAccessor>(self, rev, smudgeLfs);
|
return make_ref<GitSourceAccessor>(self, rev, smudgeLfs);
|
||||||
|
@ -1238,7 +1242,7 @@ std::vector<std::tuple<GitRepoImpl::Submodule, Hash>> GitRepoImpl::getSubmodules
|
||||||
/* Read the .gitmodules files from this revision. */
|
/* Read the .gitmodules files from this revision. */
|
||||||
CanonPath modulesFile(".gitmodules");
|
CanonPath modulesFile(".gitmodules");
|
||||||
|
|
||||||
auto accessor = getAccessor(rev, exportIgnore, "", false);
|
auto accessor = getAccessor(rev, exportIgnore, "");
|
||||||
if (!accessor->pathExists(modulesFile)) return {};
|
if (!accessor->pathExists(modulesFile)) return {};
|
||||||
|
|
||||||
/* Parse it and get the revision of each submodule. */
|
/* Parse it and get the revision of each submodule. */
|
||||||
|
@ -1249,7 +1253,7 @@ std::vector<std::tuple<GitRepoImpl::Submodule, Hash>> GitRepoImpl::getSubmodules
|
||||||
|
|
||||||
std::vector<std::tuple<Submodule, Hash>> result;
|
std::vector<std::tuple<Submodule, Hash>> result;
|
||||||
|
|
||||||
auto rawAccessor = getRawAccessor(rev, false);
|
auto rawAccessor = getRawAccessor(rev);
|
||||||
|
|
||||||
for (auto & submodule : parseSubmodules(pathTemp)) {
|
for (auto & submodule : parseSubmodules(pathTemp)) {
|
||||||
/* Filter out .gitmodules entries that don't exist or are not
|
/* Filter out .gitmodules entries that don't exist or are not
|
||||||
|
|
|
@ -90,7 +90,7 @@ struct GitRepo
|
||||||
const Hash & rev,
|
const Hash & rev,
|
||||||
bool exportIgnore,
|
bool exportIgnore,
|
||||||
std::string displayPrefix,
|
std::string displayPrefix,
|
||||||
bool smudgeLfs) = 0;
|
bool smudgeLfs = false) = 0;
|
||||||
|
|
||||||
virtual ref<SourceAccessor> getAccessor(const WorkdirInfo & wd, bool exportIgnore, MakeNotAllowedError makeNotAllowedError) = 0;
|
virtual ref<SourceAccessor> getAccessor(const WorkdirInfo & wd, bool exportIgnore, MakeNotAllowedError makeNotAllowedError) = 0;
|
||||||
|
|
||||||
|
|
|
@ -297,8 +297,7 @@ struct GitArchiveInputScheme : InputScheme
|
||||||
auto accessor = getTarballCache()->getAccessor(
|
auto accessor = getTarballCache()->getAccessor(
|
||||||
tarballInfo.treeHash,
|
tarballInfo.treeHash,
|
||||||
false,
|
false,
|
||||||
"«" + input.to_string() + "»",
|
"«" + input.to_string() + "»");
|
||||||
false);
|
|
||||||
|
|
||||||
return {accessor, input};
|
return {accessor, input};
|
||||||
}
|
}
|
||||||
|
|
|
@ -119,7 +119,7 @@ static DownloadTarballResult downloadTarball_(
|
||||||
.treeHash = treeHash,
|
.treeHash = treeHash,
|
||||||
.lastModified = (time_t) getIntAttr(infoAttrs, "lastModified"),
|
.lastModified = (time_t) getIntAttr(infoAttrs, "lastModified"),
|
||||||
.immutableUrl = maybeGetStrAttr(infoAttrs, "immutableUrl"),
|
.immutableUrl = maybeGetStrAttr(infoAttrs, "immutableUrl"),
|
||||||
.accessor = getTarballCache()->getAccessor(treeHash, false, displayPrefix, false),
|
.accessor = getTarballCache()->getAccessor(treeHash, false, displayPrefix),
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue