一、github创建账号
即github注册账号,登录github官网,根据提示注册即可
github官网
二、git客户端下载安装
已有很多git下载安装的博文了,在此就不赘述
三、sshkey的生成与添加
1、sshkey的生成以及查看
// sshkey的生成命令,此处默认使用邮箱来创建账号
ssh-keygen -t rsa -C "youremail@xx.com"
// 本地的git未使用时,可以一路enter,直接生成就可以。
// 但是若本地git已在公司的仓库中使用了,一定要看下英文提示,不要再次生成,不然sshkey就无效了,再拉公司的代码或者访问时就会有问题。
// 查看自己本地的sshkey
cat /c/Users/admin/.ssh/id_rsa.pub
2、已生成的sshkey的所在位置
// 已生成的sshkey一般在
C:\Users\admin\.ssh
包含私钥和公钥,无论是公司的git添加还是自己的github账号添加,都使用公钥。
3、github添加sshkey
进入github,找到个人中心 -> settings ,就进入设置页面了。
找到SSH and GPG keys,设置new SSh key就可以。
title就是说key的标题,下方粘贴上本地的公钥即可
四、拉取github远端仓库
// 打开本地git bash here,拉取远端的代码,此时远端仓库中有什么文件就会拉下来什么文件,且在拉取位置自动创建文件夹。
git clone https://github.com/xxxx/xxxxx.git
拉取下来后,直接在本地向其中添加文件或者修改文件即可。使用如下命令向本地仓库和远端仓库放置文件和修改文件。
git status // 查看自己本地的修改
git add . // 添加自己要上传的文件。.表示全部修改都添加,单个文件名就表示只添加
git commit -m "注释" // 将修改提交到本地仓库中,这一步上传之后,本地的修改状态都会变化
git push // 将本地的修改提交到云端,成功后代表本地与云端的代码相同了
这些是代码提交过程中的基础操作,肯定会遇到冲突,下面再介绍冲突的解决。
此处再推荐几种git的客户端管理工具,其中有插件:sourcetree(后来有了vscode和idea之后很少用了)、git Graph(vs code的插件,需要下载安装)、idea的git 管理工具(不需要特别安装)
五、本地已有文件管理到云端
我们大概率会遇到这种情况:本地已有了大量的文件,我们不想再新建仓库,clone下来,再将这些文件复制粘贴进仓库中,此时就可以使用标题五这种方式。
1、将本地文件夹变成git可管理的仓库
git init // 该命令会生成.git文件,若未生成,可点击文件管理中的【查看】,选择【隐藏的项目】
此时,使用git status命令去查看修改,会发现该文件夹下的所有文件都会被监视到,都是修改的状态
2、添加到提交队列中
git add . // 该命令上方已解释,表示添加所有已修改文件
3、提交到本地git仓库
git commit -m "注释"
4、初次上传时,与远端建立连接
git remote add origin git@github.com:xxxxx/yyyyyy
此处,git remote add origin git@github.com:是固定的,xxxxx为用户昵称,yyyyyy为仓库名称,如下图
5、提交到远端,初次上传,若仓库是空的,需要加上-u,否则报错
git push -u origin master
六、本人测试过程中遇到的问题
- REMOTE HOST IDENTIFICATION HAS CHANGED!
该问题发生在标题五的第5步,完整的报错如下:
查了一下都是说,github升级了,导致know_hosts中的内容过期了,但是编辑时使用的是我的工作电脑,公司的代码拉取都是正常的,所以如果遇到同样的问题,可以先备份一下know_hosts文件,该文件同样在 C:\Users\admin.ssh 文件夹中。
解决方法如下:
- github不知道使用的账户
报错完整如下:
根据提示写入邮箱和用户名即可