当已经在服务器配置好git、且早已注册好gitee/github后,如何使用git备份代码?

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


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 新分支名,将代码提交到一个新分支上

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值