[英]How to get command line to re-prompt for username/password for github when cloning repository
[英]How to obtain github “short” username at the command line?
因此,如果..
$ git config user.name
↳ Alex Gray # OK (my name)
$ git config user.email
↳ alex@mrgray.com # OK (my email).
和..
GithubUserForProject() { # in pwd
ORIGIN=$(git config --get remote.origin.url) && echo $ORIGIN
OWNER=${ORIGIN%/*} && echo $OWNER # trim URL tail
OWNER=${OWNER#*.com/} && echo $OWNER # trim URL head
OWNER=${OWNER#*:} && echo $OWNER # trim ssh URL head
}
$ cd /local/git/MyGitHubRepo && GithubUserForProject
↓ git@github.com:mralexgray/MyGitHubRepo.git
↓ git@github.com:mralexgray
↳ mralexgray # OK (my username, but skanky way of finding it)
但...
$ cd /local/git/SomeGuysProject && GithubUserForProject
↓ git://github.com/someguy/SomeGuysProject.git
↓ git://github.com/someguy
↳ someguy # WRONG! (cloned repo's user!)
所以,我怎么能确定我的github“短用户名”程序,无论是从env
ironment,一个GitHub的API请求等, 或以其他方式 (通过脚本或终端会话?
我以为这样一个愚蠢的问题如此悬而未决地解决了,这真是愚蠢的……因为缺乏了解如何巧妙地解析bash中的字符串而不求助于我心生的一个SED
组合,并且……
security find-internet-password -s github.com | grep acct | sed 's/"acct"<blob>="//g' | sed 's/"//g'
étvoila ....
mralexgray
这可能取决于是否安装了Github mac客户端...,但又一次... 可能没有 。
我将同意评论者的意见... Bash怎么知道您的用户名,除非您告诉它?
您可以使用git push
进行测试,以了解它是否是“您的”存储库,但是,如果正确设置了SSH密钥,则即使这样做也将失败。 简而言之,您应该将其设置为~/.bash_profile
或其他内容并完成操作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.