Github仓库的创建和文件的上传与更新
一、创建仓库
1、右键头像,选择your repositories
可以查看你现有的仓库
点击头像旁“+”,选择new repository
,新建仓库
Repository name
仓库名称, Descriptions
简介, add a readme file
要勾选上,不然后续有些麻烦(要先添加已有库连接) 创建成功
2、安装git客户端
官网:https://git-scm.com/download/
右键出现Git Bash Here Git GUI Here
即可
2.1、绑定用户
打开git-bash.exe
,因为Git是分布式版本控制系统,所以需要填写用户名和邮箱作为一个标识,用户和邮箱
为你github注册的账号和邮箱, 输入:
git config --global user.name “用户名”
git config --global user.email “邮箱”`
3、为Github账户设置SSH key
如图先查看有没有id_rsa
两个文件
通过$ ssh-keygen -t rsa -C “xxxxxx@qq.com”
来生成,执行后会询问三次:第一个是路径默认回车即可,这里的第二个、第三个是密码,可以不设置默认回车
生成成功后,再去对应目录C:\Users\用户名\ .ssh里用记事本打开id_rsa.pub
,复制得到ssh key公钥
在github中添加密钥
点击设置,选择SSH keys
菜单,Add SSH key
新增密钥,把刚刚复制的粘贴过来保存 至此,GitHub的
SSH keys
配置完成
二、上传本地项目到Github
1、在本地建立一个空文件夹demo 将要传的文件复制到demo中
在文件夹中右键选择Git Bash Here
按照如下顺序上传文件到Github,把这个目录变成Git可以管理的仓库
git init
将所有文件添加到仓库
git add .
把文件提交到仓库,双引号内是提交注释。
git commit -m "updata"
关联github仓库,“HTTPS”代表你仓库的HTTPS地址(在GitHub上面去复制)
可能报错无法连接到GitHub服务器
需要先关闭SLL证书验证,详细解决步骤在后面更新部分找3.1位置查看。
git remote add origin "HTTPS"
2、上传本地代码
2.1上传前一定要先执行git pull origin main
命令,将远程的最新更改合并到本地的main分支。这可以保证自己本地分支与远程分支同步,避免在推送时被拒绝。(我一般用强制合并到main分支:git pull origin main --allow-unrelated-histories
)
将本地的master分支重命名为main:
git branch -m main
然后
git push -u origin main(推荐选择main)
# git push -u origin master
完成后,没有报错代表上传完成,本地代码已经推送到github仓库了,就可以现在去githubt仓库看看;
接着去点击此仓库的setting
,选择Branch
,更改为master
就可以看到上传的代码(等待一会,多刷新)
第一次操作这个的恭喜你大功告成了,可以安心享用了🎉 💯
CAUTION
但我的报错了🤡
如果无法连接到GitHub服务器-点我查看
(详细步骤在后面更新部分找3.1位置查看。)无法连接到GitHub服务器,这可能是由于网络问题、SSH密钥配置问题或GitHub服务器地址设置不正确等原因导致的。
- 具体问题具体分析:方法不固定(自己去查),我这里尝试使用使用HTTPS代替SSH:如果你不想使用SSH,也可以选择使用HTTPS方式推送。首先,你需要在你的Git仓库中更改远程仓库的URL,将其更改为HTTPS格式,例如:
git remote set-url origin https://github.com/12yyyyy/vit.git
然后git push
成功了就🆗,不成功去后面继续看5.2部分操作解决
如果报错SSL证书问题-点我查看
(详细步骤在后面更新部分找3.3位置查看。)如果报错SSL证书问题:就临时禁用证书验证--可以通过设置http.sslVerify
为false
来禁用证书验证:
git config --global http.sslVerify false
最保险的方式是将其设置回默认的true值,即开启证书验证:
git config --global http.sslVerify true
三、更新本地项目到Github(更新仓库内容)
基本步骤不变,由于GitHub不能直接覆盖上传,所以更新代码要多出拉取仓库文件这一步
1.复制本地地址,新建空白文件夹updata
,把npm run docs:build
得到的dist文件夹和其他图片文件夹全部复制到updata文件夹里,然后右键Git Bash Here
,输入命令git clone + 你的仓库地址
(推荐用HTTPS地址,执行此命令前去关闭SLL证书验证,)
因为我的报错SLL证书问题,可以临时禁用证书验证,所以直接按照图片里操作临时禁用证书验证后面添加文件部分查看3.3
此时文件夹中会出现仓库名命名的文件夹,打开GitHub远程仓库文件夹,右键Git Bash Here
或者直接cd "+文件夹名"
TIP
命令:
git branch -m master
git push -u origin master
设置了本地master分支追踪远程origin仓库的master分支,这意味着今后在本地对master分支进行任何修改后,可以通过简单的git push
命令来同步到远程仓库,无需再次指定远程分支
部署过的,在更新时候到这里就完成更新了🎉 💯
关联远程仓库git remote add origin "ssh地址"
第一次设置好后后面不用管
拉取远程仓库选择代码 :第一次设置好后后面不用管
git pull origin master
或者
git pull origin master --allow-unrelated-histories
或者
git pull --rebase origin master
视情况而定,一般用第二个,具体区别网上有教程。
2.删除仓库文件(可选)
删除文件夹git rm -r --cached + 想要删除的文件夹
提交删除说明 git commit -m "删除了xx"
更新GitHub远程仓库git push -u origin master
3.添加文件
拉取远程仓库git pull origin master --allow-unrelated-histories
git init 初始化一个新的Git仓库(添加git环境--可选)
git add .“.” 的意思是所有文件,也可以指定文件
提交说明
git commit -m "updata"
更新GitHub远程仓库
git push -u origin master (如果是main分支就修改为main)
此时如果没有报错,那么Github对应仓库已经更新。
3.1、但我们的报错了:无法连接到GitHub服务器,这可能是由于网络问题、SSH密钥配置问题或GitHub服务器地址设置不正确等原因导致的。
具体问题具体分析:方法不固定(自己去查),我这里尝试使用使用HTTPS代替SSH:如果你不想使用SSH,也可以选择使用HTTPS方式推送。首先,你需要在你的Git仓库中更改远程仓库的URL,将其更改为HTTPS格式,例如:
git remote set-url origin https://github.com/12yyyyy/vit.git
然后git push
3.2、尝试使用git push命令推送他的master分支到远程仓库,但是遇到了一个错误,因为当前的master分支还没有与远程的一个分支建立关联(即没有上游分支)。这是常见的当一个新分支第一次被推送到远程仓库时会遇到的情况。
为了解决这个问题,可以使用下面这条命令。这条命令不仅会推送master分支到远程仓库的origin,同时还会设置远程的master分支作为本地master分支的上游跟踪分支。这样,在未来再执行git push时,Git就会知道要将本地的master分支推送到远程的哪个分支。
git push --set-upstream origin master
TIP
这将完成master分支的首次推送,并且设置远程分支作为跟踪分支。
3.3、如果不出意外的话意外来了:在尝试用git push --set-upstream origin master
命令推送代码到GitHub仓库时遇到了SSL证书问题,具体是“无法获取本地发行者证书”。这意味着Git在尝试验证HTTPS连接的安全性时未能找到或信任用于签名GitHub服务器证书的本地根证书。
忍无可忍,直接临时禁用证书验证,然后git push --set-upstream origin master
就能成功,成功后记得关闭禁用证书:
作为最后的手段,可以尝试临时禁用HTTPS的证书验证,但这会降低安全性,只应在调试或临时解决问题时使用。可以通过设置http.sslVerify
为false
来禁用证书验证:
git config --global http.sslVerify false
但是,强烈建议在问题解决后立即撤销这一设置,恢复证书验证,以保障数据传输的安全性。
为了重新启用TLS证书验证,需要撤销之前设置的git config --global http.sslVerify false
。他可以通过运行下面的命令来实现:
git config --global --unset http.sslVerify
如果--unset选项不起作用,可能是因为http.sslVerify之前被设置为明确的false,所以最保险的方式是将其设置回默认的true值,即开启证书验证:
git config --global http.sslVerify true
这样操作之后,TLS证书验证就会被重新启用,从而提升HTTPS连接的安全性。记得在完成测试或解决证书问题后,应当尽快执行上述命令,以确保所有HTTPS连接都是安全和加密的。