提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
0.前提
- 本机已有代码储存在某文件夹中等待提交
- 本机已经配置了SSH公钥
- 已有gitee或者github这类云端仓库账号,且已经新建了一个在线仓库
- 已有在线仓库的私人令牌
# 没有则可以去仓库的“克隆”处找入口创建
好处和目的
想要将代码方便地上传到云端时可以用该方法。
把本地的代码上传到线上仓库,这样一可以避免自己机器坏掉时代码也跟着丢失(可以方便地重新下载回来),二可以如果自己有多设备,在工位想在A设备上做一会儿,回家后又想在家里电脑B做一会儿,有git随时同步,就不需要带电脑了。
1.本地准备工作
准备本地仓库
cd 仓库名
git init
使得一个本地管理所有文件的git仓库被建立
2.使远程仓库与本机相连
2.1 公钥配置
ls -al ~/.ssh # 找出已经配置的远程公钥文件,文件名一般为id_rsa.pub,这一步用来确定该文件存在
gedit ~/.ssh/id_rsa.pub # 使用某种文本编辑器打开这个文件,gedit也可以换成vim或者code
复制里面的内容,粘贴到gitee的“个人主页-个人设置-SSH公钥”,
问:设置公钥的目的是什么?
答:配置公钥,使远程仓库可以在本机访问仓库时对暗号认出它
2.2 如何在本地登录账号使得本机更改可同步云端?
git config user.name 你的gitee用户名 # 没有就先去注册一个
git config user.email 你的gitee邮箱
这一步的目的,是为了让本地git仓库可以直接登录云端账号。如果是自己家的电脑,则可以将user.name和user.email都设置为全局,可以将上面的命令替换为
git config --global user.name 你的gitee用户名 # 没有就先去注册一个
git config --global user.email 你的gitee邮箱
2.3 在本地建好仓库但云端没有仓库时,如何将本地仓库与云端仓库连接起来?
git remote add origin https://用户名@github.com/用户名/仓库名.git
上面代码中的网址为从仓库的克隆/下载处获得的http网址(git clone后面的那一串网址)
输入用户名和密码即可,密码可以用私人令牌代替
3.本地仓库实现
git status # 查看git仓库中有哪些文件需要上传
git add 想上传的文件
在把想上传的文件上传完后,使用git commit -m 提交信息提交内容至本地仓库。此时本地仓库中已经储存了更改,下一步要把本地仓库内容传到云端
4.本地仓库push到云端仓库
使用git push -u origin master 命令完成上传,代码的意思是把本地branch的内容推到远程仓库的origin/master下。
第二、第三次使用git push可以替换为git push origin master/main
其中本地代码处在哪个branch下,可以使用git branch查看,避免弄错想提交的本地branch。远程仓库有哪些branch可以用git branch -r查看,避免弄错想提交到的那个远程branch。branch的意思就是,一个代码可能在原来的基础上,我们想以多种不同的方式改动它,分别看看它们的效果,我们哪一支都想保留着,那么就可以把多种不同方式改动的代码用不同branch保存起来。详细资料请查阅关键词“git branch”。
异常情况处理:
- 使用
git push -u origin master时提示源引用规格不匹配
error: 源引用规格 master 没有匹配
error: 无法推送一些引用到 'https://gitee.com/仓库名.git'
这种情况说明在的origin/master的分支下面,有了一个.gitignore文件,这个.gitignore文件和我们本地仓库在git init时自动生成的.gitignore文件不同,所以远程仓库那边觉得两个文件冲突了,不知道该听谁的。解决办法要么是删掉远程仓库的.gitignore,要么是git push -u origin 新分支名,将代码提交到一个新分支上

被折叠的 条评论
为什么被折叠?



