【不遮遮掩掩】Github上传本地代码以及常见问题解决方案
2019.20.18更新:
把完整命令打一遍吧,不然看完太累了不是
//初始化文件夹
git init
//初始化目录,把基本文件下载下来,如ignore文件
git pull --rebase origin master
//把当前目录下所有文件上传
git add .
//添加注释
git commit -m "test"
//添加远程库
git remote add origin https://github.com/misland/Fuji.git
//拉取最新文件
git pull origin master
//向git推送文件
git push -u origin master
2018.9.30更新
一直以来有个问题没有解决,那就是首次上传时总是出问题,提示版本不对,刚开始都是用笨方法强制提交,现在用的比较多了感觉不是那么回事,于是今天就以搜了一下,还真找到了解决办法,这个大神写的,其实想想也是,在git上建好仓库后有ignore和read.md文件,但是在本地init后并没有这两个文件,首次上传时还不知道要忽略哪些文件呢,也就会报版本不对的问题,解决办法就是大神说的,执行以下命令即可:
git pull --rebase origin master
执行完后本地就有ignore文件和license文件了,再次执行提交命令就不会再报错了,感谢这些无私分享的大神~
先絮叨几句,本来没打算写这篇文章的,最近想把自己学习安卓时写的代码上传到github,以备后面忘记时再回来复习,所以找github相关的文章想学下如何玩这东西,正好前天看到一个哥们新发了一篇文章讲如何上传代码的,就想认真对照着的他写的自己也实践一下,结果文章里面关键部分的截图各种涂抹,含糊其辞,根本没法学习。又去网上搜了其它几篇相关文章,最后成功了,但是在过程中也是几经波折,遇到了两个问题费了好久才解决,并且还是在不同文章里面找到的,所以想汇总起来方便想学习的同学学习。
ok,言归正传,要想将代码上传到github首先得在git上建个自己的库吧,不然你上传到哪里?建库什么难的,只有一个问题,license请设置成公开的,如下图
至于为什么,后面的问题里面会有解释,先不要急。另外就是请把你的库的地址记下来,进入你建好的库,右上角会有按钮Clone or download的,点它!然后在出来的框里点击复制按钮复制地址,如下图
接下来下载github客户端(地址),安装~
安装完毕后关闭,然后进入你的代码所在的文件夹,右键,选择Git Bash Here后弹出git命令行对话框,如下图
被涂抹掉的部分是我的电脑名,不用在意。
到这里你有没有一个问题?我要往github上传东西,现在github连我是谁都不知道,它怎么知道我要往哪上传呢?你说的很对,它要是知道就见鬼了。所以咱们要告诉github咱们的用户名和邮箱,在命令行里分别输入以下命令并回车,分别输入并回车,分别输入并回车,重要的事情说三遍。
git config --global user.name "wtf"
git config --global user.email "wtf@wtf.com"
以上两行一看应该就明白了,全局设置用户名和邮箱的,因为可能并不是仅仅在这一个文件夹里上传代码,以后或许还会上传其它代码呢。一般注册github应该都是用邮箱注册的吧,user.name就是你在github的昵称了,注册时都会填的,千万别告诉我你没有哦。这样设置完github才知道你是哪位大神。
好了,准备工作做好了,弄好正式上传代码吧,依然是命令行对话框内,依次输入以下命令并回车
第一步:git init
这句话是初始化,相当于通知git我要在这里做代码处理工作啦,你做好准备吧。
第二步:git add .
注意后面有个点呀,这句话就是把当前文件夹下的所有文件都上传到github,当然你也可以只上传一个文件,在后面继续输入要上传的文件的名称就行了。比如:git add "wtf.txt"
第三步:git commit -m "test"
将添加的文件提交到库,这里并不是真的要提交,而是类似于数据库里面的事务一样,先存着,最后一次性执行,因为这时github知道你要上传到哪个库吗?后面引号里面的是注释,不用多说了吧。
第四步:git remote add origin https://github.com/misland/Fuji.git
到这里知道为什么建好库后要把地址保存下来了吧,这句话的作用是将本地代码与咱们前面建的库联系起来,到这里github才知道你是谁,要往哪上传代码。
第五步:git pull origin master
对不起,这句话什么意思我也不知道- -
第六步:git push -u origin master
这句话相当于数据库里面事务的提交方法,将所有的更改上传到服务器,这里是把所有的文件上传到github上。如果是第一次上传代码会弹出一个框让你输入github的用户名和密码验证身份,想想也是,要是谁都能往你的库里上传代码不是全乱套了?不得不吐槽下看着真的好像是让输windows的用户名和密码啊(谁让你的英语那么菜的?)。如果成功执行,你再进去github网站,打开你刚才建的库,就会发现里面已经有文件了,到这里就算大功告成了!
当然,你或许会遇到问题,先别急,看看下面的问题是否包含了你遇到的问题。
问题和解决方案
问题一:Couldn't find remote ref master
如果前面四步都没什么问题,到了第五步遇到这个问题了,那么还记得建库时让你设置成公开的吗,如果不是公开的就会提示这个问题了,显然你是无法继续执行下面的步骤的。改成公开的就可以了。
问题二:Please enter a commit message to explain why this merge is necessary.
我第一次遇到这个东西时是懵逼了,不知道如何操作,虽然我能看懂下面的话的意思,是让输入提交代码的注释。
按键盘上的i键,进入输入模式,第一行的文本就是提交代码的注释,改成你想加的注释,当然也可以不改。改完后按键盘上的esc键,退出输入模式,输入":wq"回车,搞定!这个东西困了我好久有木有!!!
如何提交修改的代码
依然是进入到代码所在文件夹,依然是右键选择Git Bash Here,若你不想麻烦一个个的上传文件,从上面第二步开始执行就好了,如果只想提交一个文件,那就从第三步开始,只需在这一步标注标明文件名就可。
如:git commit -m "新加一个文件" "bobo.txt"
好了,到这里本篇就结束了,目前只是学会了上传代码和修改代码,分支合并这些功能还没用到,所以目前还没学,如果到时遇到问题就再来探讨。如果在实践的过程中遇到问题也可在评论里说下一起来解决。最后祝每位爱学习的同学都能顺利学到想要的东西,出任CTO,迎娶白富美,走向人生巅峰~
【不遮遮掩掩】Github上传本地代码以及常见问题解决方案的更多相关文章
- 【GIT】Github上传本地代码详解
本教程结合Github服务端和客户端完成本地代码上传至Github,下面进行详细讲解: 1.创建Github账号,这一个步骤应该不用太多解释,直接上官网进行注册登录即可https://github.c ...
- 使用Github上传本地代码
最近在学习Python,但是每次写完代码后不知道该怎么跟家里的电脑进行同步.于是开始了学习github ,方法很简单 1:注册个git账号:https://github.com 2:本地安装git软件 ...
- mac 上传本地代码到 Github 教程
网上有很多关于windows系统上传本地代码到github的文章,但是自己用的是mac,在网上也找了相关文章,实践的过程中还是遇到了很多问题,现在把自己的成功实践分享出来,希望能对大家有帮助. 1.首 ...
- 上传本地代码及更新代码到GitHub教程
上传本地代码及更新代码到GitHub教程 上传本地代码 第一步:去github上创建自己的Repository,创建页面如下图所示: 红框为新建的仓库的https地址 第二步: echo " ...
- git配置SSH Key,上传本地代码至github
git配置全局的name和email git config --global user.name "name" git config --global user.email &qu ...
- github小白上传本地代码及更新代码到GitHub及华为云教程
上传本地代码 第一步:去github上创建自己的Repository,创建页面如下图所示: 红框为新建的仓库的https地址 第二步: echo "# Test" >> ...
- 【Hyeri】上传本地代码到Github
个人摸索出的上传本地代码到Github的办法 首先配置SSH Key(首次需要配置) 1.设置本地ssh key,打开git bash,输入命令: ssh -keygen -t rsa -C &quo ...
- Github 上传代码的两种方式
上传本地代码/文件->Github 折腾了半天时间... Github前期准备部分 1)登录github,新建一个 repository 2)repository 命名 3)Github是一个托 ...
- 【iOS 使用github上传代码】详解
[iOS 使用github上传代码]详解 一.github创建新工程 二.直接添加文件 三.通过https 和 SSH 操作两种方式上传工程 3.1https 和 SSH 的区别: 3.1.1.前者可 ...
随机推荐
- 联想电脑t450,t460p,t470等安装好ubuntu后启动找不到系统
其实我是这样解决的: 进入bios: 关quick start 关security 然后reboot就可以了
- linux 部分常用命令
1.Linux 删除除了某个文件之外的所有文件 [root@localhost abc]# ls |grep -v 'a' |xargs rm -f 其中rm -f !(a) 最为方便.如果保留a和 ...
- 利用JS自动打开页面上链接的实现代码
在这里做一下简单记录,防止自己忘记. 下面是实现自动点击打开链接的主要函数,功能不再细说,防止太多人滥用,有心的人一看就会明白,改把改把就是一个邪恶的程序: function randopen() { ...
- ELK填坑总结和优化过程
做了几周的测试,踩了无数的坑,总结一下,全是干货,给大家分享~ 一.elk 实用知识点总结 1.编码转换问题(主要就是中文乱码) (1)input 中的codec => plain 转码 cod ...
- Curator的cluster,实现多节点数据共享
模拟两个客户端,实现多节点数据共享 package bjsxt.curator.cluster; import org.apache.curator.RetryPolicy; import org.a ...
- mysql解压缩版安装方法以及mysql无法启动1067错误
https://jingyan.baidu.com/article/f3ad7d0ffc061a09c3345bf0.html我下载的版本号是5.6.421.解压到C:\Program Files\M ...
- Python开发——函数【装饰器、高阶函数、函数嵌套、闭包】
装饰器 装饰器本质就是函数,为其他函数添加附加功能. 原则: 不修改被修饰函数的源代码 不修改被修饰函数的调用方法 装饰器知识储备:装饰器 = 高阶函数 + 函数嵌套 + 闭包 案例:求函数运行时间! ...
- c#mysql批量更新的两种方法
总体而言update 更新上传速度还是慢. 1: 简单的insert 速度稍稍比MySqlDataAdapter慢一点 配合dapper 配置文件 <?xml version="1 ...
- 64位Redhat系统应用(c++代码)搭建-使用informix和g++编译
这篇博客很有必要写下来,记录我在一个比较原生的Linux系统上搭建一套应用所遇到的各种问题和各种坑. 关于这套应用,算是我离职前的一个项目,不完成的话没有办法交差,同时,这个项目也比较紧,合作行一直在 ...
- Python中添加中文注释报错SyntaxError: Non-UTF-8 code starting with '\xc1'
问题:在文本编辑器中编辑Python文件时添加中文注释,运行python文件时报错.SyntaxError: Non-UTF-8 code starting with '\xc1' 解决方法:在文本开 ...