[英]Git pull / push - unable to access HTTPS, SSL routines seem to be down
我每天都在使用 Git(和 GitHub),一切正常,突然之間,我無法再通過我的 Git 命令與遠程 GitHub 存儲庫進行通信。 當我嘗試“Git pull”時,出現以下錯誤:
致命:無法訪問“ https://github.com/snahrvar/eatibl.git/ ”:錯誤:1407742E:SSL 例程:SSL23_GET_SERVER_HELLO:tlsv1 警報協議版本
因此,我在多個存儲庫中進行了測試,並且在我的計算機上遇到了相同的錯誤。 我讓其他人與這些相同的存儲庫進行了交互,這對他們來說效果很好。 在此錯誤之前,我對一個項目進行了“npm installSharp”,但最終失敗了,我懷疑這可能與某些 SSL 設置有關,但這是一個瘋狂的猜測!
任何一般的想法或指導將不勝感激!
如果它有幫助,這是我的環境:
根據@Frederic在評論中的建議,更新TortoiseGit和GCM並沒有幫助我,但更新Git本身卻有幫助。
https://git-scm.com/download/win
為了確保新版本的Git能夠正確安裝並且與先前的安裝沒有沖突(如果使用TortoiseGit,則可能會使用不同的文件夾,並且會混淆PATH變量,因此可能會發生),請在安裝更新的Git之前刪除現有的Git安裝。 。 可能還需要以管理員權限安裝。
您可能會遇到與GitHub棄用弱SSL加密協議不兼容的情況:
解決方案會有所不同,但對於Windows,您可能需要將Git憑據管理器升級到1.14.0。
https://github.com/Microsoft/Git-Credential-Manager-for-Windows/releases/tag/v1.14.0
使用TortoiseGit,我為此做了所有其他修復/更新,但仍然沒有成功。 我發現了這一點: 突然無法git push / pull / fetch
我的Windows Git.exe路徑的Git的TortoiseGit設置指向C:\\Program Files (x86)\\Git\\bin
。 我將其更改為C:\\Program Files\\Git\\bin
,現在又可以正常工作了。
這對我有用。
在我的情況下,更新Git是不夠的。 經過幾個小時的調試,這是我的解決辦法:
C:\wamp64\www\maandlastenmanager> git config http.sslVersion
tslv1.0
C:\wamp64\www\maandlastenmanager> git config http.sslVersion tlsv1.2
C:\wamp64\www\maandlastenmanager> git config http.sslVersion
tslv1.2
在Visual Studio Code終端上從GitHub提取代碼時,我遇到了同樣的問題。 我發現前面的答案中的建議很有用,並按照以下步驟共同找到了解決方案:
C:\\Program Files (x86)\\Git\\bin.
更改了Git的Windows路徑C:\\Program Files (x86)\\Git\\bin.
到C:\\Program Files\\Git\\bin
。 該存儲庫非常有用。
我希望這可以幫助別人。
TL; DR: git config --system http.sslbackend schannel
並關閉防病毒軟件中對github.com
HTTPS檢查
我在Windows 8 x64上使用Git命令行。 另外,默認情況下, 我的防病毒軟件會檢查HTTPS流量 。 像其他人一樣,我幾乎每天都在使用GitHub。
然后,我開始切換SSL后端:
git config --system http.sslbackend openssl ----------------vs------------------ git config --system http.sslbackend schannel
和防病毒軟件檢查SSL流量:
error:0407006A:rsa routines:RSA_padding_check_PKCS1_type_1:block type is not 01
SSL certificate problem: unable to get local issuer certificate
schannel: next InitializeSecurityContext failed: Unknown error (0x80092012) - The revocation function was unable to check revocation for the certificate.
PS:不用命令行,您只需選擇“使用本機Windows SSL驗證庫”即可重新安裝最新的Git。
PPS:情況(3)似乎是schannel庫中的錯誤,因為我的防病毒軟件使用的MITM證書已在我的計算機上列入白名單。
對我來說,與Git 1.9.5.msysgit.1相同。 我嘗試安裝https://github.com/Microsoft/Git-Credential-Manager-for-Windows/releases/tag/v1.14.0 ,但沒有更改。
實際上,安裝后什么也沒有發生。 也許我做錯了什么? (這可能對最初的問題沒有幫助,但對其他人而言,是的!)
在macOS上,您可以通過Homebrew
安裝最新的git
。
是的,我今天在請求請求時遇到了相同的問題,解決方案是通過下載最新(2.16.2)64位版本的Windows Git來簡單地更新Git。 它於5天前發布於2018-02-20。
@andw的評論對我有用:
使用以下步驟將Git版本1.9.5更新為2.15.1:
在sourceTree中,轉到菜單工具 → 選項 → Git → 使用嵌入式Git 。
一個快速的解決方案是git config --global http.sslVerify true ,但是不建議這樣做 ,因為它無法達到使用SSL的目的。
第二種更好的方法是使用ssh密鑰而不是SSL URL。
生成SSH密鑰的步驟
o在Git終端(Git Bash)中運行以下命令: ssh-keygen
運行命令后,將出現以下消息:
生成公共/私有RSA密鑰對。
輸入要保存密鑰的文件(/h//.ssh/id_rsa):
提供密鑰的存儲路徑,例如,輸入要保存密鑰的文件(/h//. C:\\Users\\Public\\my-new-ssh-key
id_rsa): C:\\Users\\Public\\my-new-ssh-key
然后提供該密鑰的密碼短語(任何至少8個字符的密碼)
•接下來,運行以下命令:eval“ $(ssh-agent –s)”
•運行以下命令: ssh-add C:/Users/Public/my-new-ssh-key
注意:在新創建的SSH密鑰的路徑中使用正斜杠。
之后,添加文件my-new-ssh-key.pub的內容,並將其添加到添加公鑰 (Bitbucket,GitHub等)的文本區域中。
連接到遠程存儲庫以獲取,拉取,推送等時,我遇到了相同的錯誤:
fatal: unable to access 'https://github.com/repository.git/': error:1
407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version
我只是重新安裝了Git 64位而不是32位,這解決了該問題。
安裝后,請驗證環境變量中的Git路徑。 它應該是:
C:\Program Files\Git\bin\git.exe
這是IntelliJ和RubyMine的問題。 GitHub必須禁用SSL(也許符合PCI?),以支持TLS。 如果您在IntelliJ或RubyMine中打開“設置”並導航至“版本控制”>“ Git”,則會看到它正在使用安裝在應用程序路徑下的git.exe。 您應該下載最新版本的Git,並在VCS設置中更改路徑以指向該路徑,例如,如果在Windows上安裝它,則C:\\ Program Files \\ Git \\ bin \\ git.exe。 在那之后就像魅力一樣。
遇到類似的錯誤。 在Windows上,將Windows上的git更新到最新版本。 這解決了問題。
Git版本升級幫了我大忙。 我的版本為1.9.5 ,因此在Windows上升級為2.21.0 。 升級也很容易。 我們不需要卸載舊版本。 下載最新的Git安裝程序,然后繼續使用默認選項繼續按下,然后該版本將更改為新版本,所有舊設置仍將像ssh密鑰等一樣工作。我們無需再次生成密鑰並放入github或任何其他存儲庫。
之前我的https協議克隆無法正常工作並給出錯誤
致命:無法訪問' https://github.com/tensorflow/models/ ':錯誤:1407742E:SSL例程:SSL23_GET_SERVER_HELLO:tlsv1警報協議版本
下載新版本並運行相同的克隆命令后,它便可以正常工作。
突然間,我也遇到了這個問題,我已經設置了 ssh 密鑰並且它工作正常,但我仍然重新生成 ssh 密鑰,設置它們並將私鑰添加到 ssh-agent 作為身份只是很失望。 然后我意識到我的機器上發生的唯一變化是通過自動軟件更新安裝了另一個版本的 GIT。 我卸載並安裝了以前版本的 GIT,它現在就像魅力一樣。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.