-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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
Git Installer could remove http.sslcainfo if native Windows SSL/TLS is selected #1409
Comments
Technically, this is a duplicate of #1158. But that other bug is so sad, having seen the promise of a contribution, which never came. @asalwa I trust you're really interested in getting this fixed? I do not have the time to do that, but I'll help you getting it fixed, and that will benefit all of us. So here are the steps: Get the Git for Windows SDKThis is as easy as downloading and running a tiny installer. It will download a bunch of files (~200MB IIRC) and build a current version of Git for Windows and install it into the Git for Windows SDK. Alternative way to get the SDKYou can also go a still slightly experimental way: clone https://github.com/git-for-windows/git-sdk-64. This will get you almost a full SDK, you still have to clone https://github.com/git-for-windows/build-extra into Build your first installerThis is really necessary to prove that you can build an installer successfully, so that you do not get stuck later. It is as easy as running sh /usr/src/build-extra/installer/release.sh 0-test This will build the installer Implement the fixThis is the location where The condition needs to be extended using an The way you combine multiple conditions in a single Test the changeTime to run
If any of these tests fails, and if you then get stuck interpreting the errors and/or have no idea how to fix them, please do feel very free to come back with the symptoms (and maybe even with a branch pushed to a fork of Commit and submit!Once everything works, please commit your work with In the commit message, please talk about the motivation for the patch. It's probably good enough to copy-edit part of this here bug report. Also, please include a line like "This addresses #1409" in the commit message; this helps close the ticket once the Pull Request is merged. Speaking of Pull Request ("PR"): if you do not have a fork of the build-extra repository yet, please make one. Then push your branch, and then hit "Create Pull Request" in the GitHub page of build-extra. Thanks! |
After 4 weeks I've found a moment to look at it (better late than never) :-)
What extra step is necessary to get it working? |
It looks that build-extra is empty Git repo:
Remote is specified in build-extra/.git/config, but it seems that repository has not been cloned. |
Yes, those sources need to be either fetched or checked out (can't remember which..). IIRC They are a repo at a particular state, but it's just bare at the moment. |
As mentioned in https://github.com/git-for-windows/git/wiki/Making-an-installer, you need to: cd /usr/src/build-extra
git pull master
./installer/release.sh <version>-test The crucial part is |
@asalwa any luck so far? |
Yes, some :) Thanks for extra explanation. Now I'm able to build my own Git installer. I hope to have time slot this or next week to finally fix this issue. |
@asalwa I look forward to it! |
Created my first PR for Git for Windows: |
@asalwa thank you so much! I merged your excellent PR, and the next Git for Windows version will have this bug fix! |
Great. I'm glad that I worked through the process of building and delivering a fix. Maybe I'll have an occasion to contribute something more sophisticated in the future :) |
Setup
(64-bit)
defaults?
to the issue you're seeing?
Using LFS and self-signed company-wide certificates.
Details
ConEmu + Git Bash.
Clone any repository which is using LFS. Do it via HTTPS transport with server certificate verifiable via native Windows mechanism. Server certificate is NOT mentioned in Git config using sslcainfo option.
Normal output produced by "git clone" with LFS.
During download of LFS objects error occurs: "x509: certificate signed by unknown authority"
This problem is well known and described in issues #1158 here and #2208 in git-lfs project (git-lfs/git-lfs#2208).
The workaround is also known. Removing http.sslcainfo from system-wide gitconfig helps. (It is written by default by the installer.)
Discussions in these other issues where not leading to any fix coming soon. What I'm suggesting here is to apply a workaround in the installer, so that WinSSL+LFS will work "out of the box".
Current state causes some misunderstanding in community. I heard voices from Git repo maintainers who believed that WinSSL+LFS does not work at all. Not every user is determined to dig through forums and GitHub issues to find this workaround.
I suggest applying Installer label, to clearly mark this issue as proposal to do something in Installer, not in cURL, LFS, etc.
The text was updated successfully, but these errors were encountered: