# bash管理git
## bash管理git的常用命令
>[success] ` git init ` #初绍化一个仓库
`git remote add origin` # 将本地的仓库和远程仓库关联
`git pull origin master` #将远程仓库的内容拉到本地项目中
`git add . ` # 将文件存进暂存区
`git commit -m "提交的信息"`
`git push -u origin master ` # 提交到远程仓库
`git clone` #远程仓库地址
`git rm <filename>` #删除文件或者文件夹
`git rm -rf --cached<filename/dir>` # 删除文件或者文件夹
>[danger]删除git上的文件,可以使用,git rm 或者 手动删除文件,然后执行:`git add . `,然后再执行 `git commit -m "msg"`和`git push` 即可
## 托管本地项目到码云
### 方法一、
* 第一步
>[info] git init 初始化一下创库
* 第二步
>[info] `git remote add origin` 远程仓库地址 :将本地的仓库和远程仓库关联
* 第三步
>[info] git pull origin master :将远程仓库的东西拉下来,与本地仓库合并
* 第四步
>[info] git add . :将文件存进暂存区
* 第五步
>[info] git commit -am "提交的信息"
* 第六步
>[info] git push -u origin master :提交到远程仓库
### 方法二、
>[danger]方法二和方法一基本上一样,只是第一步和第二步方式不一样,在这里把第一步和第二步合并一和条处理:`git clone` 远程仓库地址
### 方法三、使用ssh密钥方式
>[success]首先需要使用,如下命令生成ssh密钥
~~~
ssh-keygen -t rsa -C "xxxxx@xxxxx.com"
~~~
>[danger]生成的密钥文件在用户目录下!使用cat 查看 id_rsa.pub文件的内容,将其内容添加到github或者码云的公钥中即可。
~~~
cat ~/.ssh/id_rsa.pub
~~~
>[danger] 添加完成后,后面的操作就和方法一和方法二一样了。使用第三种方的时,不需要再次输入账户密码即可。
## 常见问题
### 1. 关联远程仓库中时报错
>[warning]报如下错误:fatal: remote origin already exists
>[success]解决办法:`git remote rm origin` #删除远程关联仓库,然后重新进行关联。
### 2.执行git clone 命令报错
>[warning] 报如下错误:Unknown SSL protocol error in connection to github.com:443
>[success]解决办法:Git忽略SSL证书错误 `git config http.sslVerify "false" `
### 3执行git clone 命令报错
>[warning] 报如下错误: git clone https://github.com/jingyifeng/phpexcel-thinkphp.git
Cloning into 'phpexcel-thinkphp'...
fatal: unable to access 'https://github.com/jingyifeng/phpexcel-thinkphp.git/': Empty reply from server
>[info]原因:一般是因为github网络问题,这时ping githut.com 是不通的。
>[danger]解决办法:
#### 1. 使用代理方式
#### 2.使用ssh公钥方式
>[success]#### **公钥生成方式**
>创建公钥的方法:`ssh-keygen -t rsa -C "xxxxx@xxxxx.com" `
#Generating public/private rsa key pair...
#三次回车即可生成 ssh key
> #### **查看你的 public key,并把他添加到码云(Gitee.com或git.oschina.net) SSH key添加地址**
>~~~
>cat ~/.ssh/id_rsa.pub
># ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6eNtGpNGwstc....
>~~~
>#### **添加后,在终端(Terminal)中输入**
>~~~
>ssh -T git@git.oschina.net
>~~~
>#### **若返回**
>~~~
>Welcome to Git@OSC, yourname!
>~~~
>则证明添加成功。
>#### **添加用户ssh key**
>点击右上角的输入图片说明标志,进入个人中心,然后点击左侧的ssh公钥后在下图位置填写你的ssh公钥。
点击确定,然后验证密码(即你的注册账号密码)就完成了ssh公钥添加。
>[danger]使用git时总是输入用户名和密码很麻烦,可以通过如下操作记住用户名和密码:在本地git托管的项目中打开.git文件夹,打开config配置文件,加入[credential] 这样就可以只输入一次密码,后面就能记住密码了。 helper=store