配置github检出到本地操作记录


在github.com网站检出到本地,操作如下:

产生一个RSA密钥对

默认保存在/root/.ssh/文件夹id_rsa/id_rsa.pub(创建的时候三次回车即可)
其中让输入passphrase则输入密钥对的保护密码,可为空。
$ ssh-keygen -t rsa -C "homeSsdComputer"
ssh-keygen的参数含义:
-t 指定密钥类型type默认是rsa。
-C 注释文字comment比如邮箱(提交github的时候设置email即可)。
-f 密钥存储filename文件名。

提供公钥给github

将公钥id_rsa.pub内容保存在github的Personal/Personal settings/SSH keys

克隆仓库到本地

$git clone git@github.com:USERNAME/example.git

本地全局设置用户信息

$ git config --global user.name "zhangsan"
$ git config --global user.email "abc@example.com"
(提交github必须配置email非全局:$ git config user.name "abc@example.com")
列出所有配置:
$ git config --list
还有参数--replace-all替换所有:
$ git config --global --replace-all user.name "zhangsan"

测试存储指纹

测试并且将下述域的RSA载入~/.ssh/known_hosts文件
$ ssh -T git@github.com

接下来在git push之前先git pull一次,然后操作如下提交:

$ git add * //添加变动文件
$ git commit -m "代码提交描述" //提交到本地仓库
$ git push origin master //提交到远端仓库

其他:

指定push提交默认分支(为nothing不指定则无效push):

$ git config --global push.default simple

如果非master直接git push则提示:

git push --set-upstream origin dev

如果 gitignore 文件不生效,需要清理一下缓存:

git rm -rf --cached .
git add .
git commit -m 'update .gitignore'

合并指定文件或文件夹:

$ git fetch
$ git checkout -m 1a7b82e README.md
$ git checkout -m 1a7b82e app/
#完整合并
$ git merge

原文链接:https://blog.yongit.com/note/131424.html