Comparing changes
Open a pull request
base repository: NixOS/nix
base: f32a9b354dd9
head repository: NixOS/nix
compare: 55cefd41d633
- 18 commits
- 5 files changed
- 4 contributors
Commits on Mar 29, 2020
-
Add fetchSubmodules to builtins.fetchGit
There are some downsides to this features: - Submodules are not cached (unlike the root repo), - Full checkouts are created in a temporary directory.
-
-
-
Add git submodule fixes from @bjornfor
This fixes fetching repositories with no submodules and also cleans up .git files in checkouts.
-
-
-
-
Some platforms seem to still require linking with stdc++fs to enable STL std::filesystem support.
-
fetchGit: fix "fatal: couldn't find remote ref refs/heads/master" iss…
…ue with submodules
-
-
fetchGit: fix submodule output attribute
Before this change it would be false for all evaluations but the first. Now it follows the input argument (as it should).
-
fetchGit: add submodules attribute to the .link file
The .link file is used as a lock, so I think we should put the "submodule" attribute in there since turning on submodules creates a new .link file path.
-
-
fetchGit: checkout rev instead of latest ref
Major bugfix for the submodules = true code path. TODO: Add tests.
-
-
fetchGit: fix submodule corner case by fetching all refs from cacheDir
Due to fetchGit not checking if rev is an ancestor of ref (there is even a FIXME comment about it in the code), the cache repo might not have the ref even though it has the rev. This doesn't matter when submodule = false, but the submodule = true code blows up because it tries to fetch the (missing) ref from the cache repo. Fix this in the simplest way possible: fetch all refs from the local cache repo when submodules = true. TODO: Add tests.
-
fetchGit: don't use std::filesystem to filter git repos
Using std::filesystem means also having to link with -lstdc++fs on some platforms and it's hard to discover for what platforms this is needed. As all the functionality is already implemented as utilities, use those instead.
Commits on Apr 7, 2020
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff f32a9b354dd9...55cefd41d633