SW-PRODUCT/개발

git github tips

굴돌 2015. 11. 11. 17:19



# keygen & add

#* 아래 명령어를 이용해서 {color:blue}id_rsa_username{color}라는 이름으로 키 파일 생성.

   이때, passphrase 없이 생성한다. => ssh-agent 사용환경 세팅 안되서...

ssh-keygen -t rsa -C "username@UserTeam" -f id_rsa_username


# github setup

#* username를 UserTeam 팀의 Oweners에 넣어준다.

#* username로 github에 로그인해서 SSH Keys 메뉴를 이용해 {color:blue}id_rsa_username.pub{color}를 등록해준다.

cat id_rsa_username.pub


# ssh config

#* ssh의 alias 기능을 이용해서 지정한 IdentityFile을 이용해 ssh 연결하도록 할 수 있다.

#* config file 설명: http://nerderati.com/2011/03/17/simplify-your-life-with-an-ssh-config-file/

#* githug config 설명: http://stackoverflow.com/a/17158985/1845799

cat <<EOF > config

# github alias for username.

Host username-github

    HostName github.com

    PreferredAuthentications publickey

    IdentityFile ~/.ssh/id_rsa_username

EOF


# test with *ssh -T*

#* 아래 명령어를 이용해서 특정 host로 접근이 가능한지 확인한다. 

#* host까지만 체크하는 것이라 repository 지정이나 github 권한 세팅은 없어도 된다.

#* publickey 어쩌구 에러가 나면  [이 링크|https://help.github.com/articles/error-permission-denied-publickey/]를 확인해본다.

   github에 pub 키 등록이 안되서 publickey 어쩌구 에러가 떴었다.

#* 참고로, 결과 메시지의 *username* 자리에는 github 계정명이 오는데, pub키로 매칭 성공한 계정의 이름을 보여주기 때문에 특정 키파일이 어느 계정에 매핑됐는지 모를때 계정 찾는 용도로도 활용 가능.

ssh -T git@username-github  # simple test

ssh -vT git@username-github  # for detail messages.


# test with git ls-remote

#* local에서 아래 명령어를 이용하면 UserTeam repository에 권한 세팅이 잘 되었는지 확인할 수 있다.

#* deploy key로만 등록되어 있어도 여기까지는 잘 된다. 여기까지는 되고 git push를 했는데 안된다 싶으면 github에서 해당 계정의 권한을 체크해본다.

git ls-remote -h git@username-github:UserTeam HEAD


# remote origin 변경

cd /git_dir/repo_dir

git remote set-url origin git@username-github:UserTeam 




'SW-PRODUCT > 개발' 카테고리의 다른 글

빅데이터 분석가의 업무 영역...  (0) 2015.11.13
Twitter에서 Storm을 Heron으로 교체?  (0) 2015.11.12
spring-boot에서 profile 관리  (0) 2015.11.11
Mockito  (0) 2015.11.10
[도서] 서버/인프라 실전 구축 가이드  (0) 2015.10.31