An error occurred while fetching this tab.
Use git diff in temp repository instead of diff over directories
There are no commits yet
Push commits to the source branch or add previously merged commits to review them.
Created by: mrnugget
This fixes #137 (closed).
Before this change src actions exec
produced patches by doing the
following:
diff A B
The problem with this approach was that it didn't respect the .gitignore file in a repository.
And since we run diff outside the folder it's non-trivial to make it respect the .gitignore, which contains pattern with the assumption that the root directory is the repository.
This change here uses the following approach:
git init && git add --all --force & git commit -am "init"
in directorygit add --all && git diff --cached
in directory AThat gives us a proper diff produced by git, respecting .gitignore.
There's a cost involved to making a commit with all the files (since the git objects have to be written), but from manual testing I can say that it's not noticably slower than unzipping the archive a second time, as we previously did.
It also gets us rid of the dependency on diff
, of which users have a
ton of different versions installed.
Push commits to the source branch or add previously merged commits to review them.