git建立仓库和push
- 首先安装git,这里就不说了。git和github是通过秘钥配对的方式进行链接沟通的,要通过一下命令生成一对秘钥:
ssh-keygen -t rsa -C "your_email@youremail.com"
其中your_email@youremail.com是你的邮箱,生成秘钥的文件位置默认,按enter键就可以,密码用于push时输入,可以自己设定,也可以不设定(按enter键即可),然后会在~/.ssh隐藏文件下生成两个文件:id_rsa和id_rsa.pub,id_rsa是秘钥文件,id_rsa.pub是公开钥匙,将id_rsa.pub中内容(即秘钥)添加到github账号上即可。通过以下命令可以查看公开钥匙内容:
cat ~/.ssh/id_rsa.pub
加入完成后,建立本地仓库:- 在某一个文件下建立一个文件,该文件名和github上要联系的文件名相同,这样,在push时,可以避免混乱。
- 初始化仓库:在该文件内部,通过以下命令将建立的文件初始化为仓库:
git init - 与github上同名的仓库建立联系:
git remote add origin git@github.com:xxx/xxx.git - 将想要push到github上的文件先加入到本地仓库,首先复制到本地仓库内,但现在并为进入本地仓库,通过以下命令建立与本地仓库联系:
git add xxx
其中,xxx是你要添加的文件。 - 将仓库内的xxx文件提交:
git commit -m xxxx - push到github上:
git push -u origin master
说明:
由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令
- 出现的问题解决:
1.当github上的仓库写了README.md,而本地仓库没有时,会出现错误,可以通过以下命令:
git pull --rebase origin master
执行后可以看到本地代码中多了README.md文件,这样在执行git push -u origin master就没有问题了。
- 当出现push: permission denied (public key)错误时,可以通过以下命令:
ssh-add -k ~/.ssh/id_rsassh-add -k ~/.ssh/id_rsa、
然后在push。