단일 호스트 다git 계정 다rsa 키 + 개인 키에 따라 공개 키 + knownhosts +를 생성합니다.git/config 관련 설정
개요
몇 가지 질문을 기록합니다.
1. 한 대의 컴퓨터에 여러 개의git 계정을 저장하여 생성한rsa 키 (개인 키 + 공공 키)
2. 기존의 개인 키에 따라 대응하는 공개 키를 생성한다
3. 창고마다 대응하는 것.git/config 프로필은 로컬 창고에만 유효하며 다중 사용자, 다중 REPO 등 관리에 사용할 수 있습니다
이렇게 하면 서로 다른 서버 + 메일박스에 따라 대응하는 키를 생성한 다음에 개인 키를 저장하면 된다. 이렇게 하면 서로 다른 컴퓨터에서 대응하는 새 키 + 새 키를 다시 생성하지 않고 서버에 업로드하여 전환에 따른 상호작용 문제를 줄일 수 있다.
또한knowhosts의 해석과gitconfig의 사용도 기록합니다.git/config 파일의 로컬 설정입니다.
다git 계정 처리
먼저 git config --list를 사용하여 글로벌 구성을 확인합니다.$ git config --list
core.symlinks=false
core.autocrlf=true
core.fscache=true
color.diff=auto
color.status=auto
color.branch=auto
color.interactive=true
help.format=html
rebase.autosquash=true http.sslbackend=openssl http.sslcainfo=E:/Applications/Git/mingw64/ssl/certs/ca-bundle.crt
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
filter.lfs.clean=git-lfs clean -- %f
user.name=xxx
[email protected]
user.name=yyy
[email protected]
core.repositoryformatversion=0
core.filemode=false
core.bare=false
core.logallrefupdates=true
두 그룹의 사용자가 나타났습니다.name/user.이메일, 주로 필자가 대응하는 로컬 창고 디렉터리에서 이 명령을 사용하기 때문에 로컬 사용자는 yy/yy입니다.com. $ cat .git/config
[user]
name = yyy
email = [email protected]
앞의 xx/[email protected]전역적으로 설정된 사용자/메일박스입니다. 관련gitconfig 명령을 통해 설정할 수 있습니다.
공식 git config 명령 관련 링크 문서:https://git-scm.com/docs/git-config.
git config는 --global과 --local 옵션을 통해 전역과 로컬 내용을 설정할 수 있으며, 전역 내용은 사용자 디렉터리에 저장할 수 있습니다.gitconfig에서 로컬 내용은 해당 디렉터리에 저장됩니다.git/config 파일에 있습니다.
부분 제거 명령:#
git config --global --unset user.name
#
git config --global user.name
#
git config --global --unset user.email
#
git config --global user.email
#
git config --global --unset user.password
#
git config --global user.password
다rsa 키 처리
rsa 키 관련은 ssh-keygen 도구를 사용해야 합니다. 생성된 파일은 사용자 디렉터리/.ssh/디렉터리 아래.
메일박스에 따라 새rsa 키 생성
관련 명령은 ssh-keygen-trsa-C"[email protected]": $ ssh-keygen -t rsa -C "[email protected]"
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/--/.ssh/id_rsa):
id_ 지정 가능rsa_name에서 대응하는 개인 키와 공개 키를 생성하고 절차에 따라 계속 차를 돌려서 확인하면 됩니다.MINGW64 ~/.ssh
$ ls
id_rsa id_rsa.pub id_rsa_name id_rsa_name.pub known_hosts
설정ssh/config
키가 생성된 후에 지정한 서버를 설정해야 합니다. 그렇지 않으면gitclone 등을 정상적으로 설정할 수 없습니다.ssh 디렉토리에 새로 생성된 config 파일은 다음과 같이 추가됩니다.Host 100.111.216.233
HostName 100.111.216.233
User a
IdentityFile /c/Users/i5/.ssh/id_rsa_name
설정 후 정상적인gitclone 서버 파일 (서버 권한 자체로 보기)
개인 키에 따라 공개 키를 생성합니다.
앞에서 말한 바와 같이 고정된 개인 키를 저장하면 서로 다른 컴퓨터나 다른 관리의 편리함에 유리하고 불필요한 상호작용을 줄일 수 있다.
생성에 대한 명령은 다음과 같습니다.ssh-keygen -y -f [private-key-path] > [output-path]
예를 들면 위의 id_에 따라rsa_name 생성 id_rsa_name.pub:
ssh-keygen-y -f id_ 입력rsa_name > id_rsa_name.pub하면 돼요.
http 계정 비밀번호 로컬 저장
로컬 창고에 있는.git/config에 다음 옵션을 추가하면 됩니다.[credential]
helper = store
이렇게 하면 매번 원격 조작에 비밀번호를 입력할 필요가 없다.(로컬 암호 저장은 암호화된 것으로 추정되며 정확한 위치는 알 수 없습니다.)
참고 자료
먼저 git config --list를 사용하여 글로벌 구성을 확인합니다.
$ git config --list
core.symlinks=false
core.autocrlf=true
core.fscache=true
color.diff=auto
color.status=auto
color.branch=auto
color.interactive=true
help.format=html
rebase.autosquash=true http.sslbackend=openssl http.sslcainfo=E:/Applications/Git/mingw64/ssl/certs/ca-bundle.crt
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
filter.lfs.clean=git-lfs clean -- %f
user.name=xxx
[email protected]
user.name=yyy
[email protected]
core.repositoryformatversion=0
core.filemode=false
core.bare=false
core.logallrefupdates=true
두 그룹의 사용자가 나타났습니다.name/user.이메일, 주로 필자가 대응하는 로컬 창고 디렉터리에서 이 명령을 사용하기 때문에 로컬 사용자는 yy/yy입니다.com.
$ cat .git/config
[user]
name = yyy
email = [email protected]
앞의 xx/[email protected]전역적으로 설정된 사용자/메일박스입니다. 관련gitconfig 명령을 통해 설정할 수 있습니다.
공식 git config 명령 관련 링크 문서:https://git-scm.com/docs/git-config.
git config는 --global과 --local 옵션을 통해 전역과 로컬 내용을 설정할 수 있으며, 전역 내용은 사용자 디렉터리에 저장할 수 있습니다.gitconfig에서 로컬 내용은 해당 디렉터리에 저장됩니다.git/config 파일에 있습니다.
부분 제거 명령:
#
git config --global --unset user.name
#
git config --global user.name
#
git config --global --unset user.email
#
git config --global user.email
#
git config --global --unset user.password
#
git config --global user.password
다rsa 키 처리
rsa 키 관련은 ssh-keygen 도구를 사용해야 합니다. 생성된 파일은 사용자 디렉터리/.ssh/디렉터리 아래.
메일박스에 따라 새rsa 키 생성
관련 명령은 ssh-keygen-trsa-C"[email protected]": $ ssh-keygen -t rsa -C "[email protected]"
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/--/.ssh/id_rsa):
id_ 지정 가능rsa_name에서 대응하는 개인 키와 공개 키를 생성하고 절차에 따라 계속 차를 돌려서 확인하면 됩니다.MINGW64 ~/.ssh
$ ls
id_rsa id_rsa.pub id_rsa_name id_rsa_name.pub known_hosts
설정ssh/config
키가 생성된 후에 지정한 서버를 설정해야 합니다. 그렇지 않으면gitclone 등을 정상적으로 설정할 수 없습니다.ssh 디렉토리에 새로 생성된 config 파일은 다음과 같이 추가됩니다.Host 100.111.216.233
HostName 100.111.216.233
User a
IdentityFile /c/Users/i5/.ssh/id_rsa_name
설정 후 정상적인gitclone 서버 파일 (서버 권한 자체로 보기)
개인 키에 따라 공개 키를 생성합니다.
앞에서 말한 바와 같이 고정된 개인 키를 저장하면 서로 다른 컴퓨터나 다른 관리의 편리함에 유리하고 불필요한 상호작용을 줄일 수 있다.
생성에 대한 명령은 다음과 같습니다.ssh-keygen -y -f [private-key-path] > [output-path]
예를 들면 위의 id_에 따라rsa_name 생성 id_rsa_name.pub:
ssh-keygen-y -f id_ 입력rsa_name > id_rsa_name.pub하면 돼요.
http 계정 비밀번호 로컬 저장
로컬 창고에 있는.git/config에 다음 옵션을 추가하면 됩니다.[credential]
helper = store
이렇게 하면 매번 원격 조작에 비밀번호를 입력할 필요가 없다.(로컬 암호 저장은 암호화된 것으로 추정되며 정확한 위치는 알 수 없습니다.)
참고 자료
$ ssh-keygen -t rsa -C "[email protected]"
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/--/.ssh/id_rsa):
MINGW64 ~/.ssh
$ ls
id_rsa id_rsa.pub id_rsa_name id_rsa_name.pub known_hosts
Host 100.111.216.233
HostName 100.111.216.233
User a
IdentityFile /c/Users/i5/.ssh/id_rsa_name
앞에서 말한 바와 같이 고정된 개인 키를 저장하면 서로 다른 컴퓨터나 다른 관리의 편리함에 유리하고 불필요한 상호작용을 줄일 수 있다.
생성에 대한 명령은 다음과 같습니다.
ssh-keygen -y -f [private-key-path] > [output-path]
예를 들면 위의 id_에 따라rsa_name 생성 id_rsa_name.pub:
ssh-keygen-y -f id_ 입력rsa_name > id_rsa_name.pub하면 돼요.
http 계정 비밀번호 로컬 저장
로컬 창고에 있는.git/config에 다음 옵션을 추가하면 됩니다.
[credential]
helper = store
이렇게 하면 매번 원격 조작에 비밀번호를 입력할 필요가 없다.(로컬 암호 저장은 암호화된 것으로 추정되며 정확한 위치는 알 수 없습니다.)