Почему $ HOME / .config / git / credentials игнорируется, когда semantic-release делает git push - PullRequest
0 голосов
/ 01 октября 2018

Я использую git 2.19.0 , и у меня сбой задания по выпуску CI.

Я хочу пройти аутентификацию, используя git git-credentials .

Вот как я создаю свои $ HOME / .config / git / credentials

if [[ "${CI_PROJECT_URL}" =~ (([^/]*/){3}) ]]; then
  mkdir -p $HOME/.config/git
  echo "${BASH_REMATCH[1]/:\/\//://gitlab-ci-token:${GL_TOKEN:-$GITLAB_TOKEN}@}" > $HOME/.config/git/credentials
  git config --global credential.helper store
fi

Это то, что у меня есть в .git/config:

[fetch]
    recurseSubmodules = false
[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
[remote "origin"]
    url = https://gitlab-ci-token:xxxxxxxxxxxxxxxxxxxx@git.example.com/some-org/some-project.git
    fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
    remote = origin
    merge = refs/heads/master

Это то, что у меня есть в $HOME/.config/git/credentials:

$ cat $HOME/.config/git/credentials
https://gitlab-ci-token:Dwq456WQd4q56QW@git.example.com/

Однако, когда я делаю git push, он не может использовать эту конфигурацию, вместо этого он читает тот из .git/config внутри проекта.

Выполнение cp $HOME/.config/git/credentials ~/.git-credentials не помогло.

Почему $ HOME / .config / git / credentials будет игнорироваться, когда я git push?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...