初始化git和github仓库
1.安装git
2.进入本地源码目录
git init
会出现.git目录
首次需要配置github账户和邮箱
git config --global user.name "github注册的用户名"
git config --global user.mail "github注册的邮箱"
3.添加远程仓库
在github网页新建仓库
git remote add origin git@github.com:github用户名/仓库名.git
.git/config文件内容会出现remote等内容,ssh方式的url是git开头,http(s)方式是http(s)开头
如果是从别人拉过来的仓库,修改后新建仓库,上传遇到fatal: remote origin already exists
问题,解决方法:
git remote rm origin
git remote add origin git@github.com:github用户名/仓库名.git
4.git add, commit, push三连
git add -A
git commit -m 'first commit'
git push -f --set-upstream origin master //首次提交
完成以后远程可以看得到仓库的文件
5.创建分支
如果已经有主线,在本地git checkout branchname
, 远程创建分支,记录.git链接, 然后关联远程分支即可:
git remote add origin https://github.com/*/*.git
然后推送
git push origin branchname
首次配置可能的问题:
push时有RSA key错误
因为Git使用SSH连接,而SSH第一次连接需要验证GitHub服务器的Key。确认GitHub的Key的指纹信息是否真的来自GitHub的服务器。解决办法是在本地生成key,配置到github服务器
(1)创建ssh key
ls -al ~/.ssh
ssh-keygen -t rsa -C "github用户名"
cat ~/.ssh/id_rsa.pub
在push三连过程可以设置global全局配置,以后默认push到github
(2)配置ssh key到github
登陆github,头像-settings-new SSH,复制新生成的SSH配置到服务器
(3)需要重新add origin新建仓库(或者网页上新建仓库),再push,git status
和git log
查看分支和日志
push时不能使用密码登陆
1 | Support for password authentication was removed on August 13, 2021. |
使用personal token替代密码登陆:
Github setting -> Developer setting -> Personal access token -> Generate a New Token (classic) -> 设置不过时,所有权限勾上 -> 首次会显示token字符,下次不会显示,记得备份token!-> 再次输入账号密码时用token代替密码即可push
git clone有HTTP2错误
错误码:RPC failed; curl 16 Error in the HTTP2 framing layer
解决办法:Git使用HTTP1.1
1 | git config --global http.version HTTP/1.1 |
Github clone使用国内镜像
国内搞开发最痛苦的就是限速+断开连接,github clone经常失败。推荐国内镜像服务作为代理进行git clone,将原git地址的github.com替换成代理地址即可。参考 无需代理直接加速各种 GitHub 资源拉取
1 | #git clone原地址 |
使用国内镜像并不一定能解决所有clone问题,有的recursive clone对依赖包有版本要求,国内镜像版本不匹配导致clone fail,此时不能使用国内镜像。
解决版本:下载release版本的zip包,绕开git clone操作。
Github连接报错问题
OpenSSL errno 10054
一劳永逸的解决办法:git bash -> git config –global http.sslVerify “false”