fetchGit: fix submodules = true for dirty trees
This commit is contained in:
parent
b306b7039e
commit
cc522d0d23
1 changed files with 5 additions and 1 deletions
|
@ -55,8 +55,12 @@ GitInfo exportGit(ref<Store> store, const std::string & uri,
|
||||||
gitInfo.rev = "0000000000000000000000000000000000000000";
|
gitInfo.rev = "0000000000000000000000000000000000000000";
|
||||||
gitInfo.shortRev = std::string(gitInfo.rev, 0, 7);
|
gitInfo.shortRev = std::string(gitInfo.rev, 0, 7);
|
||||||
|
|
||||||
|
auto gitOpts = Strings({ "-C", uri, "ls-files", "-z" });
|
||||||
|
if (fetchSubmodules) {
|
||||||
|
gitOpts.emplace_back("--recurse-submodules");
|
||||||
|
}
|
||||||
auto files = tokenizeString<std::set<std::string>>(
|
auto files = tokenizeString<std::set<std::string>>(
|
||||||
runProgram("git", true, { "-C", uri, "ls-files", "-z" }), "\0"s);
|
runProgram("git", true, gitOpts), "\0"s);
|
||||||
|
|
||||||
PathFilter filter = [&](const Path & p) -> bool {
|
PathFilter filter = [&](const Path & p) -> bool {
|
||||||
assert(hasPrefix(p, uri));
|
assert(hasPrefix(p, uri));
|
||||||
|
|
Loading…
Reference in a new issue