Skip to content

Support diff generation with null OIDs in `DiffBlobs`

The DiffBlobs RPC generates and streams diffs for request blob pairs. Unfortunately git-diff(1) does not understand null OIDs though. This means that for additions and deletions the DiffBlobs RPC cannot effectively generate diffs. It could be argued that one should not request a diff for a created/deleted file because it would simply be the contents of the file prepended with +/- respectively. At the same time, from an API design and convenience perspective, it would be simpler and more intuitive to have Gitaly handle these cases on behalf of the callers.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information