Как установить git SSL без проверки только для определенных репозиториев?

Я должен использовать сервер git без надлежащих сертификатов, но я не хочу этого делать

env GIT_SSL_NO_VERIFY=true git command

каждый раз, когда я делаю работу ЖКТ. Но я также хотел бы оставить SSL включенным для других репозиториев git. Есть ли способ сделать это локальным для одного РЕПО?

8 ответов


можно сделать

git config http.sslVerify false

в вашем конкретном репо, чтобы отключить проверку сертификатов SSL только для этого РЕПО.


как сказал Тирумалай, но внутри клонированного хранилища и без --global. И. Е.,

  1. GIT_SSL_NO_VERIFY=true git clone https://url
  2. cd <directory-of-the-clone>
  3. git config http.sslVerify false

вы можете сделать следующее

для одного РЕПО

git config http.sslVerify false

для всех РЕПО

git config --global http.sslVerify false

Если вы находитесь на машине Windows и установлен Git, вы можете попробовать следующие шаги:

  1. перейдите в папку установки Git, например: C:\Program файлы (x86)\Git\etc
  2. редактировать файл: gitconfig хранит настройки
  3. под [http] добавьте строку: sslVerify = false

    [http]
      sslVerify = false
    

в частности, если вам нужен рекурсивный клон

GIT_SSL_NO_VERIFY=true git clone --recursive https://github.com/xx/xx.git

для windows, Если вы хотите глобальную конфигурацию, то запустите

git config --global http.sslVerify false

в Linux, если вы вызываете это внутри папки репозитория git:

git config http.sslVerify false

добавить sslVerify = false на на на .git папка, которая также может быть решением, если вы хотите добавить это вручную с помощью nano .git/config:

...
[http]
  sslVerify = false

существует простой способ настройки GIT для правильной обработки вашего сервера. Просто добавьте определенный раздел http для вашего сервера git и укажите, какому сертификату (кодированному Base64) доверять:

~/.gitconfig хранит настройки

[http "https://repo.your-server.com"]
# windows path use double back slashes
#  sslCaInfo = C:\Users\<user>\repo.your-server.com.cer
# unix path to certificate (Base64 encoded)
sslCaInfo = /home/<user>/repo.your-server.com.cer

таким образом, у вас больше не будет ошибок SSL и проверки (обычно) самозаверяющего сертификата. Это лучший способ пойти, так как он защищает вас от атак человека в середине. Когда вы просто отключаете проверку ssl, вы уязвимы для такого рода атак.

https://git-scm.com/docs/git-config#git-config-httplturlgt