整体过程:

1、打开要上传的文件夹(例如我要上传的是cminus_compiler-2021-fall-master文件夹下的所有东西):

cd cminus_compiler-2021-fall-master

2、输入git init,初始化本地仓库(当前文件夹):

git init

3、输入git add *,添加所有文件:

git add *

4、输入commit -m "所提交文件的描述信息(即注释)"(例如我提交的cminus_compiler-2021-fall-master文件夹是实验二的内容,所以输入git commit -m "lab2"):

5、输入git push指令执行推送,具体指令为git push+个人空间地址+文件名+.git(例如我的指令:git push https://gitee.com/lw520lw/cminus_compiler-2021-fall.git)

git push https://gitee.com/lw520lw/cminus_compiler-2021-fall-master.git

至此提交成功。

遇到的问题

(说出来特别丢人,这个实验我在提交这一步上花了将近两个小时,因为我本来就是个菜鸟,基础太差,别人一下子就能解决的问题我要研究很久,很多东西只能慢慢磨。虽然这里面有些知识点很傻很简单,但好不容易弄出来,还是想记录下来,就当一种纪念,以后忘了也能来看看)

问题太多,而且很多问题我就是单纯地上网找资料一步一步解决了,具体什么原因并不清楚,所以文章里就简单记录一下解决方法,感兴趣的同学可以自己去查找其他资料。

1、直接照着实验教程输入git add *,结果提示:

fatal: 不是 git 仓库(或者任何父目录):.git

解决方法:先输入git init初始化本地仓库即可。

2、输入git commit -m "注释"的时候提示:

*** 请告诉我你是谁。

运行

git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

来设置您账号的缺省身份标识。
如果仅在本仓库设置身份标识,则省略 --global 参数。

fatal: 无法自动探测邮件地址(得到 'lw@lw-VirtualBox.(none)')

解决方法:根据提示输入邮件和用户名,完成后重新输入git commit -m "注释"即可。

注意:要先在gitee网站-个人设置-邮箱管理界面将“不公开我的邮箱地址”的勾选取消,即邮箱地址状态为公开。

自己的gitee用户名,查看方法:点击右上角头像选择个人主义,看到左边栏,头像下面@后面的字符串即为自己的gitee用户名。

git config --global user.email "XXXXXXXX@qq.com"
git config --global user.name "XXX"

3、 要重新提交文件,输入git commit -m "注释"时候提示:

位于分支 master
无文件要提交,干净的工作区
解决方法:将原来的git文件夹删除。

(1)输入ll进入文件夹中浏览文件内容,可以看到原来的文件夹中存在.git

(2)输入rm -rf .git删除.git文件,再次查看,.git文件没有了

(3)从第一步git init开始,再次操作。

4、一开始按照教程直接输入git push,提示:

fatal: 没有配置推送目标。
或通过命令行指定 URL,或用下面命令配置一个远程仓库

git remote add <名称> <地址>

然后使用该远程仓库名执行推送

git push <名称>

解决方法:根据提示输入git remote add <名称> <地址>,配置一个远程仓库。

<名称>即自己要上传的文件名称,例如我的是cminus_compiler-2021-fall-master

<地址>个人空间地址+仓库名+git(https://gitee.com/你的gitee用户名/仓库名.git),例如我的地址是https://gitee.com/lw520lw/cminus_compiler-2021-fall.git

写这个问题的原因是一开始被“名称”和“地址”两个东西弄糊涂了,好几次没有输对,又因为这个错在好几步之后才会体现,不能立即报错,所以导致我重做了很多次。

我输入的指令:

git remote add cminus_compiler-2021-fall-master https://gitee.com/lw520lw/cminus_compiler-2021-fall.git

(指令太长,为方便没有完全截图)

5、输入git push <名称>后提示:

fatal: 当前分支 master 没有对应的上游分支。
为推送当前分支并建立与远程上游的跟踪,使用

git push --set-upstream cminus_compiler-2021-fall-master master

 上个问题刚刚解决完,按照它说的输入git push <名称>(我输入git push cminus_compiler-2021-fall-master master),结果又不对了(有点崩溃)。然后根据提示直接复制粘贴输入git push --set-upstream cminus_compiler-2021-fall-master master,下一步按照要求输入gitee用户名和密码(这个时候以为成功提交了,因为上次的实验一到这一步就完了),结果又提示:

To https://gitee.com/lw520lw/cminus_compiler-2021-fall.git
 ! [rejected]        master -> master (fetch first)
error: 推送一些引用到 'https://gitee.com/lw520lw/cminus_compiler-2021-fall.git' 失败
提示:更新被拒绝,因为远程仓库包含您本地尚不存在的提交。这通常是因为另外
提示:一个仓库已向该引用进行了推送。再次推送前,您可能需要先整合远程变更
提示:(如 'git pull ...')。
提示:详见 'git push --help' 中的 'Note about fast-forwards' 小节。

 这个问题一头雾水,又上网查资料,说原因可能是之前上传时创建的.git文件被删除或更改,或者其他人在github上提交过代码,有两种解决方法:

(1)强行上传,输入git push origin +master

(2)先同步github上的代码到本地,在上面更改之后再上传

本来我用第(2)种方法,又重新下载代码、编辑、上传,结果还是不行,然后就直接用第(1)种方法强行上传。输入git push origin +master后再次输入刚才的指令git push --set-upstream cminus_compiler-2021-fall-master master,终于成功了(虽然不知道原理,就是在网上找的步骤)

最终成功截图:

在VM VirtualBox的Ubuntu系统中使用github上传文件到仓库过程及遇到的问题相关推荐

  1. android项目中使用的服务器上,android 开发中使用okhttp上传文件到服务器

    开发android手机客户端,常常会需要上传文件到服务器,比如:你手机里的照片. 使用okhttp会是一个很好的选择.它使用很简单,而且运行效率也很高. 首先,在 app/build.gradle 的 ...

  2. ajax上传 java,javaWeb中使用ajax上传文件

    javaWeb上传图片 上传文件所必要的两个jar包:commons-fileupload.jar.commons-io.jar. 核心代码: String withPath = req.getSer ...

  3. php curl文件上传,在 php 中通过 CURL 上传文件

    1.使用 CURL 默认的方法$file = realpath('gif/1.gif'); //要上传的文件 $fields['f'] = '@'.$file; $ch = curl_init(); ...

  4. linux下github上传文件,linux下将本地文件上传到github中?

    今天编写一份Python基础代码,经过Linux上传到github上,遇到点问题,已经解决 1.首先sudo su 进入root 用户 2.ls 检查出当前文件下有什么文件 3. cd 进入你将要上传 ...

  5. windows中通过xshell上传文件到Linux中

    1. windows中准备好要上传的文件 2. xshell登录连接远程Linux系统 3. xshell打开要上传到Linux的文件连接 4. xshell里面进入Linux系统管理员root(普通 ...

  6. JS中使用FormData上传文件、图片的方法

    参考博客:http://www.cnblogs.com/xiaohuochai/p/6543019.html http://www.cnblogs.com/qcloud1001/p/6839541.h ...

  7. ElementUI中el-upload中怎样限制上传文件的格式

    场景 使用el-upload上传文件时限制只能上传指定格式的文件. 比如这里只允许上传apk格式的文件. 注: 博客: https://blog.csdn.net/badao_liumang_qizh ...

  8. java string 包含http_Java中使用HttpPost上传文件以及HttpGet进行API请求(包含HttpPost上传文件)...

    一.HttpPost上传文件 public static String getSuffix(final MultipartFile file){ if(file == null || file.get ...

  9. 使用Jquery中ajax实现上传文件

    html: <input type="file" name="uploadFile" id="uploadFile"> jq: ...

最新文章

  1. 解决Inno Setup制作安装包无法创建桌面快捷方式的问题
  2. java-2018-01-17计划
  3. C/S框架-WebService部署图
  4. commit之后,想撤销commit
  5. 企业数字化转型:数字化江湖的六大门派
  6. php字符串和数组基本方法,PHP字符串和数组
  7. PYNQ实战笔记(一)————常用的代码使用及配置技巧-持续更新
  8. [转]XCode调试 设置全局断点并快速定位问题代码所在行
  9. 回溯策略的汉诺塔问题
  10. 2021-09-14联想云教室连接不上服务器解决办法
  11. [剑指Offer]:翻转单词顺序
  12. 浅谈LANG_ISO 639-1世界语言列表检索
  13. MacOS Catalina 10.15安装教程,启动U盘制作及安装方法
  14. Shell 练习题 21—30,内附答案
  15. 2017第九届广州国际园林机械与园艺工具展会刊(参展商名录)
  16. [阿毛]Ubuntu 16安装CH340串口驱动
  17. 图:美国首颗“嗅碳”卫星发射失败坠海
  18. 09- 京东客户购买意向预测 (机器学习集成算法) (项目九) *
  19. 那些年,你与快递小哥的爱恨情仇...
  20. java构造方法时对象初始化,实例化,参数赋值

热门文章

  1. 惠普HP LaserJet Pro M329dn 打印机驱动
  2. 东南大学计算机考研经验
  3. 你可以接受婚前同居吗
  4. 零基础如何系统学习Python?Python入门必看
  5. STM32基于WiFi和蓝牙的内外网通信
  6. EMC Data Domain 存储系统的日常健康检查
  7. 计算机电竞学院就业方向,电竞专业主要是学什么的 有前途吗
  8. 如何修改远程桌面的端口号以及修改远程桌面端口的软件
  9. 申请百度地图密钥Android SDK
  10. PLC数据采集之难题