답변:
오늘 비슷한 문제가 발생했습니다. 작업 사본에서 문제가 발생했기 때문에 디렉토리의 이름을 바꾸고 github에서 프로젝트를 다시 복제하기로 결정했습니다. 그러나 그렇게 한 후에 암호를 입력하여 풀 / 푸시 요청을 수행해야했습니다.
오늘은 https 프로토콜을 사용하여 프로젝트를 복제했기 때문입니다! 사용중인 프로토콜을 확인하려면 실행하십시오.
git config -l
'remote.origin.url'로 시작하는 줄을보십시오.
프로토콜을 전환하려면
git config remote.origin.url git@github.com:the_repository_username/your_project.git
the_repository_username
및 your_project
적절한 저장소의 이름과 그 저장소의 소유자로 교체해야합니다. 저장소를 소유 한 경우 사용자 이름이되고 그렇지 않으면 저장소 소유자의 사용자 이름이됩니다.
git@github.com:some-user/repo-name.git
git config remote.origin.url ...
위에서 사용한 것과 다른 것의 차이점은 git remote set-url origin ...
무엇입니까?
git remote rm origin
SSH 대신 HTTPS를 사용하는 경우 다음을 수행 할 수 있습니다.
로 원격 URL (remote.origin.url)을 찾으십시오.
git config -l
Sergio Morstabilini 덕분에
원격 URL은 다음과 같습니다. https : // {USERNAME} @ github.com / {USERNAME} / {REPONAME} .git
이 명령을 실행하십시오.
git config remote.origin.url https://{USERNAME}:{PASSWORD}@github.com/{USERNAME}/{REPONAME}.git
@
.
.git/config
파일 안에 일반 텍스트로 저장 됩니다!
HTTPS를 사용하는 것을 선호하는데, ssh 키를 설정하는 것보다 쉽고 안전합니다.
HTTPS를 사용하면 다음과 같이 git이 github 리모컨의 사용자 이름을 묻는 것을 방지 할 수 있습니다.
git config --global url."https://yourusername@github.com".insteadOf "https://github.com"
그리고 최소한 git이 암호를 요구하는 빈도를 다음과 같이 줄일 수 있습니다.
git config --global credential.helper 'cache --timeout=28800'
28800은 8 시간입니다. 근무일을 시작할 때이 설정을 사용하여 비밀번호를 한 번만 입력합니다.
그 후에는 이러한 항목을 ~/.gitconfig
[url "https://yourusername@github.com"]
insteadOf = https://github.com
[credential]
helper = cache --timeout=28800
출처:
HTTPS를 사용하여 Windows를 사용하는 경우 Git 자격 증명 저장소를 사용해보십시오 . Windows 자격 증명 저장소를 사용하여 이름과 암호를 보유합니다.
Windows Credential Store for Git
This application is a small helper app designed to follow the
git credentials API as defined by the Git Documentation.
Installation
1. Download the git-credential-winstore.exe application
2. Run it! If you have GIT in your PATH, it should just work.
다음에 이름과 암호를 입력하면 기억해 두게됩니다.
내가 2 단계 인증을 사용하는 경우 상황이 약간 다릅니다. 다른 곳에서 좋은 대답을 찾지 못했기 때문에 나중에 찾을 수 있도록 여기에 하나를 붙일 것입니다.
2 단계 인증을 사용하는 경우 사용자 이름 / 암호를 지정해도 이벤트가 작동하지 않습니다. 액세스가 거부됩니다. 그러나 응용 프로그램 액세스 토큰을 사용하고 git의 자격 증명 도우미를 사용하여 캐시 할 수 있습니다. 관련 링크는 다음과 같습니다.
그리고 나는 이것을 어디에서 보았는지 기억하지 못하지만 사용자 이름을 물을 때 응용 프로그램 액세스 토큰을 사용하는 곳입니다. 그런 다음 암호를 비워 두십시오. 내 맥에서 일했다.
푸시하는 동안 GitHub가 비밀번호를 요구하지 않게하려면 HTTPS URL ( ) 대신 SSH ( git@github.com:...
)를 사용 https://github.com/...
하고 SSH 키를 GitHub 계정에 추가해야합니다 . 참조 : 어떤 원격 URL을 사용해야합니까?
그렇지 않으면 Git에 GitHub 비밀번호 를 캐시 하기 위해 HTTPS를 정말로 사용해야하는 경우 자격 증명 도우미 를 사용 하여 GitHub와 대화 할 때마다 GitHub 사용자 이름과 비밀번호를 기억하도록 Git에 지시해야합니다.
git config --global credential.helper osxkeychain
( osxkeychain helper
필수),git config --global credential.helper wincred
git config --global credential.helper cache
.netrc
또 다른 방법은 ~/.netrc
( _netrc
Windows의 경우)에 사용자 / 암호 구성을 사용하는 것입니다.
machine github.com
login USERNAME
password PASSWORD
를 사용 하여 OAuth 토큰 ( 개인 API 토큰 ) 변경을 추진, 예를 들어,
git push https://4UTHT0KEN@github.com/foo/bar
관련 :
또한 Windows를 사용하는 경우 다음을 사용할 수 있습니다.
$ git config --global credential.helper wincred
한 번 더 로그인하면 git이 기억합니다.
Windows 를 사용중인 경우 Windows 용 Git Credential Manager를 사용하십시오 .
이 프로젝트에는 다음 이 포함됩니다 .
- Windows 자격 증명 저장소의 보안 암호 저장소
- Visual Studio Team Services에 대한 다단계 인증 지원
- GitHub에 대한 2 단계 인증 지원
- Visual Studio Team Services 및 GitHub에 대한 개인 액세스 토큰 생성 및 사용 지원
- Azure Directory가 지원하는 Visual Studio Team Services에 대한 비 대화식 모드 지원
- Team Foundation Server에 대한 Kerberos 인증
- 빌드 에이전트 최적화를위한 선택적 설정
간단하게 최신 버전을 다운로드 하여 설치합니다.
사용하는 방법
당신은하지 않습니다. 그것은 마술 자격 증명이 필요할 때 작동합니다.