github使用成长记
学校里一直都有自己写一些网页,一方面为了学习熟练技能,另一方面也是兴趣所在。但是独乐乐不如众乐乐,一直向往有那么一个平台能把自己做得东西分享给广大网友,并且想借着分享的契机和各位程序猿交流学习心得(这才是重点~)。因为大二大三只知道自己coding,也没有什么压力一定要找到这么个平台,所以有收获积累都是往本子上或者书上记来着。现在大四正是找工作实习的时候,带着电脑或者打印材料从而把东西展现给面试官,实在麻烦。这才知道大家已经用github用得火热啦!
不说废话,这两天琢磨github,终于琢磨出点浪花儿来。下面分享一些github使用感受以及遇到的问题与解决办法(毕竟本人目前是小白,有不对之处还望指出!)
一、github里面的版本库、工作区、分支(以下照旧没有顺序可言哟,都是我的学习路程)
一开始我只想用github来作为代码托管的一个平台,接触之后才知道说它是代码托管所实在是委屈它了,人家是一个集版本管理于一身的版本库。
形象地说,比如你作为主人发布一个网站(因为我对前端感兴趣)到github上,这个网站可能存在着某些bug。但群众的力量是伟大的,当一些网友看见你的网站并很感兴趣地帮你改了改并且提交给github,这时候你可以看到该网友改的地方,并可以把两个版本(一个是你自己提交的版本,一个是网友改过后提交的版本)的网站合并(我还没尝试,以后会有的?!),当然你也可以选择不理或者自己维护修改。要知道,在原版上修改是可怕的(万一修改错了,还不能回退就毁了),所以有许多类似于副本的版本给你修改用。
综上,可以理解为什么github是版本式托管
了解了它是一个版本库托管平台,OK,现在要把我本地的文件(一个网站文件)上传到网络端github了。
看着www.github.com中各种英文,并且终于注册好(sign up)一个账号、创建一个库(new repository)之后,以为能和百度云一样,直接上传文件(包括文件夹),却发现是我太天真。。。这个貌似要用客户端才能上传文件夹(目前我只知道需要用客户端)。于是我又屁颠儿跑去下客户端,乖乖,客户端总是安装失败(因为这是在线安装,貌似有些设置需要改,<但我改了也没用>)。无奈下我只好下一个离线安装包git bash。但是啊但是!gitbash是一个一点也没有友好用户界面的窗口,要用gitbash,你首先要遵守人家的规则(各种命令语句人家才能懂~),好吧,老实学着呗,毕竟互联网时代的我们要学着享受这些计算机带给我们的所有,想想其实命令语句有也没什么,无非就是熟练几行命令,之后用起来还是牛逼吼吼~
gitbash学起来(先上个窗口图镇镇~)
ok,接下来是各种命令的学习,详情可以参考http://www.open-open.com/lib/view/open1414396787325.html(也不知是哪位大神的整理,步骤清晰很简单)
学习了解完一些简单命令之后,你会发现一打开gitbash,只需要用cd命令切换到你的github中,然后将做好要上传的文件复制到github下,就可以开始上传啦。
现在说下上传时遇到的一些小问题:
1)用户名或密码无效(如图)
明明照着输入username(和你的github网站上的一致),但是注意到没,密码那一栏好像是空的(我当时也是傻的,以为不需要密码),虽然你看不到密码那一栏的变化(这也许就是某种技术掩盖,类似于加密),但其实是需要输入密码的。
之后上传关联库正确之后:
2)如何一次性add许多文件(上传文件夹的方式一模一样),并一起commit
如图只需要用空格间隔开就可以add
接着commit,其实提交的是上面add的所有文件(git commit -m '这是对提交的注释而已'),如图:
综上,解决了本地库连接版本库,并且将本地库的东西上传到网络端的版本库中啦。
讲讲分支的概念:其实开始就说了,为了不在原版本的代码上修改(以防造成不可逆错误),所以有了分支这个概念。在分支上建立不同版本的程序(修改或者删除某处),然后为了让所创建的项目更加完美,将各个版本(即各个分支)中的精华合并在一起。分支就类似于可编辑的副本。
本地种工作区和版本库以及add和commit的区别
工作区:就是本地电脑上看到的目录,就是你自己建的,打算用来做成库的一个文件夹
版本库:在本地电脑中的概念就是.git文件(这个是隐藏文件,除非你电脑设置过,一般是隐藏的),这个你也别管,人家是一个文件夹,类似工作区,里面有stage(暂存区),指向master(git自动创建的第一个分支,也就是自己的原分支)的HEAD指针等等
add其实就是将工作区中的文件加到.git中的暂存区
commit其实就是将暂存区中的add的文件放到分支中(比如master)
以上,先到这儿,欢迎一起讨论前端,学习前端。本人github --> https://github.com/HalenChiang
github使用成长记的更多相关文章
- 阿里巴巴年薪800k大数据全栈工程师成长记
大数据全栈工程师一词,最早出现于Facebook工程师Calos Bueno的一篇文章 - Full Stack (需fanqiang).他把全栈工程师定义为对性能影响有着深入理解的技术通才.自那以后 ...
- 你好,C++(38)从问题描述中发现对象的属性和行为 6.4 工资程序成长记:类与对象(上)
6.4 工资程序成长记:类与对象 “夜半三更哟,盼天明:寒冬腊月哟,盼春风.若要盼得哟,涨工资,岭上……”自从上次老板许诺给小陈涨工资以后,一转眼又过去几个月了,可是涨工资的事一点动静都没有.小陈只 ...
- 你好,C++(30)“大事化小,小事化了”5.4.3 工资程序成长记:函数
5.4.3 工资程序成长记:函数 自从上次小陈“程序员”的工资程序得到老板的夸奖,口头许诺给他涨工资以后,老板再也没有找过他,涨工资的事自然也就没有下文了.这天,老板又突然召他去办公室.这下可把小陈高 ...
- 你好,C++(23) 4.4.2 工资程序成长记:用数组处理批量数据,用循环结构执行重复动作
4.4 从语句到程序 了解了各种表达式和语句之后,就相当于掌握了写作文要用到的词语和句子,但是,仅有词语和句子是无法构成一篇有意义的文章的.要完成一篇文章,先需要确定这篇文章的结构,是先分述再总述, ...
- 菜鸟vimer成长记——目录
菜鸟vimer成长记——第0章.我眼中的vim学习 菜鸟vimer成长记——第1章.统一概念 菜鸟vimer成长记——第2.0章.模式初探 菜鸟vimer成长记——第2.1章.normal模式 菜鸟v ...
- 蓝的成长记——追逐DBA(6): 做事与做人:小技术,大为人
***********************************************声明*************************************************** ...
- 蓝的成长记——追逐DBA(5):不谈技术谈业务,恼人的应用系统
***************************************声明*************************************** 个人在oracle路上的成长记录,当中 ...
- 蓝的成长记——追逐DBA(18):小机上WAS集群故障,由一次更换IP引起
原创作品.出自 "深蓝的blog" 博客,欢迎转载,转载时请务必注明出处.否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong ...
- 蓝的成长记——追逐DBA(10):飞刀防身,熟络而非专长:摆弄中间件Websphere
原创作品,出自 "深蓝的blog" 博客.欢迎转载,转载时请务必注明出处.否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong ...
随机推荐
- [Hive - LanguageManual] Statistics in Hive
Statistics in Hive Statistics in Hive Motivation Scope Table and Partition Statistics Column Statist ...
- Downloading the Google Cloud Storage Client Library
Google Cloud Storage client是一个客户端库,与任何一个生产环境使用的App Engine版本都相互独立.如果你想使用App Engine Development server ...
- HDU-4751 Divide Groups 染色问题
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4751 题意:有n个人,每个人都认识一些人,要求把他们分成两个集合,使得两个集合中的人都相符两两认识. ...
- thymeleaf中的th:with用法
局部变量,th:with能定义局部变量: <div th:with="firstPer=${persons[0]}"> <p> The name of th ...
- Webstorm2016激活码[ 转]
转至:http://blog.csdn.net/tingwode2014_/article/details/51063657 43B4A73YYJ-eyJsaWNlbnNlSWQiOiI0M0I0QT ...
- python的sys.path
python检测不到模块: No module named 是因为模块没有在sys.path中,查看sys.path的方法 import sys sys.path 发现确实没有加载到模块. windo ...
- mysql distinct
mysql的DISTINCT的关键字有很多你想不到的用处1.在count 不重复的记录的时候能用到比如SELECT COUNT( DISTINCT id ) FROM tablename;就是计算ta ...
- 在Hibernate中使用HibernateTemplate来进行包含sql语句的查询
/** * 使用sql语句进行查询操作 * @param sql * @return */ public List queryWithSql(final Stri ...
- UVa442 Matrix Chain Multiplication
// UVa442 Matrix Chain Multiplication // 题意:输入n个矩阵的维度和一些矩阵链乘表达式,输出乘法的次数.假定A和m*n的,B是n*p的,那么AB是m*p的,乘法 ...
- android SoundPool播放音效
MediaPlayer的缺点: 资源占用量高,延时时间较长 不支持多个音效同一时候播放 SoundPool主要用于播放一些较短的声音片段,CPU资源占用率低和反应延时小,还支持自行色设置声音的品质,音 ...