github 차이 - 힘내는 비밀 번호에 대한 나에게 묻고 계속





10 Answers

credential.helper 구성

OS X (현재 macOS)에서 이것을 터미널에서 실행하십시오.

git config --global credential.helper osxkeychain

git은 Keychain.app를 사용하여 사용자 이름과 암호를 저장하고 키 체인에서 개인 ssh 키에 대한 암호문을 검색 할 수 있습니다.

창문 사용 :

git config --global credential.helper wincred

문제 해결

git 자격 증명 도우미가 올바르게 구성되어 있으면 macOS가 키 체인에 암호를 저장합니다. 때때로 ssh와 키 체인에 저장된 암호문 사이연결 이 끊어 질 수 있습니다. 키 체인에 키를 다시 추가하려면 ssh-add -K 또는 ssh-add ~/.ssh/id_rsa 를 실행하십시오.

macOS 10.12 Sierra가 ssh로 변경되었습니다.

macOS 10.12의 경우 Sierra ssh-add -K 는 재부팅 할 때마다 실행해야합니다. 이를 피하기 위해 ~/.ssh/config 을 생성하십시오.

Host *
   AddKeysToAgent yes
   UseKeychain yes
   IdentityFile ~/.ssh/id_rsa

10.12.2의 ssh_config man 페이지에서 :

UseKeychain

macOS에서 특정 키를 사용하려고 할 때 시스템이 사용자의 키 체인에서 암호문을 검색할지 여부를 지정합니다. 사용자가 패스 프레이즈를 제공하면이 옵션은 패스 프레이즈가 올바른 것으로 확인되면 키 체인에 패스워드를 저장할지 여부를 지정합니다. 인수는 '예'또는 '아니오'여야합니다. 기본값은 '아니오'입니다.

애플은 Technote 2449 를 추가하여 어떤 일이 일어 났는지 설명합니다.

macOS Sierra 이전에는 ssh가 암호를 묻는 대화 상자를 표시하고이를 키 체인에 저장하는 옵션을 제공합니다. 이 UI는 얼마 전 사용되지 않아 제거되었습니다.

git이란 사이트 명령어

나는 Git을 잠시 동안 사용 해왔다. 그러나 암호에 대한 끊임없는 요청은 나를 벽으로 몰아 넣기 시작했다.

나는 OSX와 Github을 사용하고 있으며, GitHub의 Set Up Git 페이지 에서 지시 한대로 Git과 SSH 키를 설정했다 . 또한 GitHub의 SSH 키 암호 문구 페이지에서 언급 한 것처럼 Mac OSX 키 체인에 github SSH 키를 추가했습니다. 내 공개 키는 Git에 등록되어 있습니다.

그럼에도 불구하고, 내가 잡아 당겨하려고 할 때마다 내 사용자 이름과 비밀 번호를 입력해야합니다. 거기에 내가 설정해야 할 SSH 키 이외의 것이 있습니까?




이것을 사용하십시오 : github.com을 적절한 호스트 이름으로 대체하십시오

git remote set-url origin git@github.com:user/repo.git



또한 누가 암호문을 요구하는지 묻습니다. 그것은 자식인가 아니면 당신의 SSH 에이전트인가?

내 경우에는, 내가 git pull 때마다 그것이 나에게 묻고 있었다 :

Enter passphrase for key '/work/username/.ssh/id_rsa':

그래서 나는 그것을 passphrase를 요구하는 git이라고 생각했다. 그래서 나는 솔루션을 찾기 위해 사냥을 계속했고, 나중에 SSH 에이전트가 종료되었다는 것을 깨달았습니다. here. 주어진대로 eval 'ssh-agent -s'ssh-add 를 사용하여 고칠 수 있습니다 here.

이것은 제가 생각한 바보 같은 실수였습니다. 그러나 여기에 글을 게시했습니다. 누군가가 틀린 나무를 짖는 것으로부터 약간의 시간을 절약 할 수 있도록 도움을주기 위해서입니다.




git 1.7.9+ 용 창에서 명령 프롬프트에서 다음 명령을 실행하여 텍스트 편집기에서 구성 파일을 엽니 다.

    git config --global --edit

그런 다음 파일에없는 경우 다음 블록을 추가하거나 적절하게 편집하십시오

    [credential "https://giturl.com"]
        username = <user id>
        helper = wincred

파일을 저장하고 닫습니다. 위 변경 후 단 한 번만 증인을 제공해야합니다.




나는 당신이 당신의 문제를 해결했다고 생각하지만, 여기서 도움이되는 해결책을 보지 못했습니다, 그래서 여기 있습니다.

터미널에 입력 :

echo "" > ~/.ssh/known_hosts

그러면 known_hosts 파일이 비게되며, 사용하고 연결 한 모든 호스트를 추가해야하지만 문제가 해결됩니다.




귀하의 터미널에있는 자식과 함께 키 체인을 사용하여 orkoden의 대답이 불완전하고 오류가 발생했습니다. 이것은 사용자가 키 체인의 터미널에 입력 한 사용자 이름과 암호를 저장하기 위해 수행해야하는 작업입니다.

curl http://github-media-downloads.s3.amazonaws.com/osx/git-credential-osxkeychain -o git-credential-osxkeychain
sudo mv git-credential-osxkeychain /usr/local/bin
sudo chmod u+x /usr/local/bin/git-credential-osxkeychain

그런 다음

git config --global credential.helper osxkeychain

곱슬 곱슬하기 전에 git config로 이미 작업을했다면 아무런 문제가 없다.




1 단계 : 현재 설정 확인

cat .git/config

당신은 얻을 것이다 :

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
    ignorecase = true
    precomposeunicode = true
[remote "origin"]
    url = https://github.com/path_to_your_git.git
    fetch = +refs/heads/*:refs/remotes/origin/*
[user]
    name = your_username
    email = your_email
[branch "master-staging"]
    remote = origin
    merge = refs/heads/master-staging

2 단계 : 원격 출처 제거

git remote rm origin

3 단계 : 사용자 이름과 비밀번호가 포함 된 원거리 원점 추가

git remote add origin https://your_git_username:your_git_password@github.com/path_to_your_git.git



구성에 따라 다른 종류의 인증이 있습니다. 다음은 몇 가지 예입니다.

  1. git credential-osxkeychain .

    자격 증명이 유효하지 않은 경우 다음 방법으로 제거하십시오.

    git credential-osxkeychain erase
    

    또는:

    printf "protocol=https\nhost=github.com\n" | git credential-osxkeychain erase
    

    그래서 자식은 키 체인 권한을 다시 요구하지 않습니다. 그런 다음 다시 구성하십시오.

    참고 : GitHub에서 OSX Keychain 에서 자격 증명 업데이트

  2. 귀하의 SSH RSA 키.

    이 경우 SSH 키를 추가 한 것과 SSH 키를 비교해야하며 올바른 ID를 사용하고 있다면 ssh-add -L / ssh-add -l 사용하여 확인하십시오.

  3. HTTPS 인증 ( ssh 프로토콜 대신 https 를 사용하는 경우).

    ~/.netrc (Windows의 경우 %HOME%/_netrc )를 사용하여 자격 증명을 제공하십시오 (예 :

    machine stash1.mycompany.com
    login myusername 
    password mypassword
    

    추가 정보 : GitHub와 Syncing










Related


Tags

git   github