Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

infrastructure for applying patches to Git source #175

Open
shiftkey opened this issue Jan 17, 2019 · 0 comments
Open

infrastructure for applying patches to Git source #175

shiftkey opened this issue Jan 17, 2019 · 0 comments

Comments

@shiftkey
Copy link
Member

shiftkey commented Jan 17, 2019

There are some issues like #72 and #164 that require making changes to Git.

The rough idea is this:

  • keep working from known stable Git versions as a submodule reference
  • define a folder structure containing Git patches to apply to the Git submodule
  • when running the build.sh step, ensure that patches for the given platform are applied before building, in the expected sort order (file format [number]-[patch-description].patch)
  • after building, create a unique tag e.g. v2.20.1-dugite-{sha} where {sha} is the HEAD commit after applying the patches
  • define some acceptance tests at the end of the build step that can verify the patches work as expected, e.g.

cd "$DESTINATION/bin" || exit 1
./git --version
GIT_CURL_VERBOSE=1 \
GIT_TEMPLATE_DIR="$DESTINATION/share/git-core/templates" \
GIT_SSL_CAINFO="$DESTINATION/ssl/cacert.pem" \
GIT_EXEC_PATH="$DESTINATION/libexec/git-core" \
PREFIX="$DESTINATION" \
./git clone https://github.com/git/git.github.io "$TEMP_CLONE_DIR/git.github.io"
)

This will affect the generated Git version, because of how the GIT_VERSION file is generated by the Makefile. I might be the only one who notices or cares about this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant