在VM VirtualBox的Ubuntu系统中使用github上传文件到仓库过程及遇到的问题
整体过程:
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上传文件到仓库过程及遇到的问题相关推荐
- android项目中使用的服务器上,android 开发中使用okhttp上传文件到服务器
开发android手机客户端,常常会需要上传文件到服务器,比如:你手机里的照片. 使用okhttp会是一个很好的选择.它使用很简单,而且运行效率也很高. 首先,在 app/build.gradle 的 ...
- ajax上传 java,javaWeb中使用ajax上传文件
javaWeb上传图片 上传文件所必要的两个jar包:commons-fileupload.jar.commons-io.jar. 核心代码: String withPath = req.getSer ...
- php curl文件上传,在 php 中通过 CURL 上传文件
1.使用 CURL 默认的方法$file = realpath('gif/1.gif'); //要上传的文件 $fields['f'] = '@'.$file; $ch = curl_init(); ...
- linux下github上传文件,linux下将本地文件上传到github中?
今天编写一份Python基础代码,经过Linux上传到github上,遇到点问题,已经解决 1.首先sudo su 进入root 用户 2.ls 检查出当前文件下有什么文件 3. cd 进入你将要上传 ...
- windows中通过xshell上传文件到Linux中
1. windows中准备好要上传的文件 2. xshell登录连接远程Linux系统 3. xshell打开要上传到Linux的文件连接 4. xshell里面进入Linux系统管理员root(普通 ...
- JS中使用FormData上传文件、图片的方法
参考博客:http://www.cnblogs.com/xiaohuochai/p/6543019.html http://www.cnblogs.com/qcloud1001/p/6839541.h ...
- ElementUI中el-upload中怎样限制上传文件的格式
场景 使用el-upload上传文件时限制只能上传指定格式的文件. 比如这里只允许上传apk格式的文件. 注: 博客: https://blog.csdn.net/badao_liumang_qizh ...
- java string 包含http_Java中使用HttpPost上传文件以及HttpGet进行API请求(包含HttpPost上传文件)...
一.HttpPost上传文件 public static String getSuffix(final MultipartFile file){ if(file == null || file.get ...
- 使用Jquery中ajax实现上传文件
html: <input type="file" name="uploadFile" id="uploadFile"> jq: ...
最新文章
- 解决Inno Setup制作安装包无法创建桌面快捷方式的问题
- java-2018-01-17计划
- C/S框架-WebService部署图
- commit之后,想撤销commit
- 企业数字化转型:数字化江湖的六大门派
- php字符串和数组基本方法,PHP字符串和数组
- PYNQ实战笔记(一)————常用的代码使用及配置技巧-持续更新
- [转]XCode调试 设置全局断点并快速定位问题代码所在行
- 回溯策略的汉诺塔问题
- 2021-09-14联想云教室连接不上服务器解决办法
- [剑指Offer]:翻转单词顺序
- 浅谈LANG_ISO 639-1世界语言列表检索
- MacOS Catalina 10.15安装教程,启动U盘制作及安装方法
- Shell 练习题 21—30,内附答案
- 2017第九届广州国际园林机械与园艺工具展会刊(参展商名录)
- [阿毛]Ubuntu 16安装CH340串口驱动
- 图:美国首颗“嗅碳”卫星发射失败坠海
- 09- 京东客户购买意向预测 (机器学习集成算法) (项目九) *
- 那些年,你与快递小哥的爱恨情仇...
- java构造方法时对象初始化,实例化,参数赋值