Git的入门级玩法
作为一个还没有实际开发经验的程序员,对于版本控制多少有些陌生,我通常的做法就是项目名后面加数字标记版本,然后备注一个文档说明更新。据个人了解svn用的比较多,我也学习了一点,无非是本地下载一个服务器端,再下一个客户端,模拟一下操作罢了,真正做起来难免觉得有点乏味,所以也没有深入下去。
在我找工作的时候,曾今有人给我一个任务,让我用mongoDB+springMVC+freemark两天之内做一个demo,然后上传到git上他去看。在这里还是要感谢这个人,在我简历上的公布的技术之外布置了这个任务,开阔了我的视野,刺激了我进一步去学习springMVC和git,也了解了下非关系型数据库mongodb。因为和别的公司签了合同要去上班最终没有做下去,但是他提到的技术我都去了解并试着去学习了,收货颇多。
而对于git,其实早有耳闻,记得最初打开github网站,一进去都是英文,当时就退缩了,也怪自己没有远见和胆识,走走停停好几次。如今我终于迈开步伐,在好奇心的驱使下开始摸索,学习的过程中发现教程少的可怜,所以在此简单总结下,针对到目前最新版本的github的个人使用方法,大神就此移驾吧。
个人使用(基于初学者的图形界面使用)
客户端以github for windows 为例,服务器端直接在github网站上查看。
一.上传项目源码
1.Github网站注册账号
2.下载github for windows(xp貌似不支持)
3.本地登陆(什么SSH的也免了,自动完成)
4.创建仓库(可指定目录) 如E:\github\SpringMVC_demo(SpringMVC_demo为仓库名)
5.复制需要上传的项目到该仓库目录下(.gitattributes和.gitignore是随仓库自动创建的)
6.客户端自动刷新(提示有未提交的改动)
7.提交更新:点击show,添加主题和详细描述,然后commmit。这个提交只能说是对于本地仓库的提交。
8.注意右上角的变化,点击右上角的Publish Repository,可以把该仓库推送到远程服务器端
9.Github网站上查看提交(网速慢的话还要等待页面刷新)
二.简单版本控制
1.修改该仓库中版本1目录下的一个叫备注的文本文件,git自动检测到修改,同第一次拖进去的一样提示你。
注意:如果没有在本地提交,只是在一个暂存区中,那么可以说git不认可你的修改,肯定也无法同步到远程仓库。
2.添加描述,然后提交,右上角显示一个未同步。
提示:如果只是本地稍加修改,或者想后面重大升级后一起提交,那么无需同步
如图:可以看下差异,绿色表示添加部分,红色表示删掉的部分,都是以当前版本为基线。
3.在这里我们先回滚刚才的提交的test,自动生成一个描述为Revert ‘test’的版本,右上角显示两次未同步。
4.假如我们前面拖过来的是第一个版本,现在我们做了升级,开发工具这边可以直接在第一个版本的基础上继续开发,因为这边本地仓库有了备份。完成了版本2,我们可以直接把新版拖过来。现在又显示有未提交的代码,一样处理。
提示:版本二的差异开始显现,打开有红色标记的文件,可以明显看到差异。同时右上角显示有三次未同步。
我们特意来看看刚才的test部分,回滚之后很显然变化又是相对于Revert ‘test’版本的,说明这是在一条主线上进行的,有一个指针前后移动来控制版本。
5.我们再来同步一下,看看远程仓库的变化,很显然看出来手动的4次提交都有记录了。
这个时候如果我们需要版本1的代码怎么办,我想如果代码量小的话可直接在当前版本的视图下copy,但是个人开发的话我们通常只是比较差异,自己做的一看都能回忆起来。真正需要代码的恐怕就是他人了,这时可以去github下载或者克隆。
这里因为个人能力有限,只是介绍了入门级的简单玩法,至于团队开发,参与开源项目等等,以后再作介绍吧。对于本文中不足之处,敬请指正!
Git的入门级玩法的更多相关文章
- git分布式版本控制玩法
git分布式版本控制玩法 Git distributed version control play github的配置安装步骤:1.下载git bash(从http://www.git-scm.com ...
- git的简单玩法
本篇笔记参考廖雪峰的git教程,为方便查看将命令部分提取并记录下来. 无意对原作的版权侵犯,如需要学习请到廖雪峰网站学习git 创建git仓库 # mkdir learngit && ...
- Python的生成器进阶玩法
Python的生成器进阶玩法 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.yield的表达式形式 #!/usr/bin/env python #_*_coding:utf-8 ...
- 【转】4G18的低成本NA玩法
首先是要再次强调一次,4G18的缸径是76MM,冲程是87.5MM.属于典型的长冲程低转发动机! 这种设计的优点是比较适合市区走停的工作状况,省油. 如果要针对改装方案而言因为这种低转时便可输出大扭矩 ...
- openresty+lua在反向代理服务中的玩法
openresty+lua在反向代理服务中的玩法 phith0n · 2015/06/02 10:35 0x01 起因 几天前学弟给我介绍他用nginx搭建的反代,代理了谷歌和维基百科. 由此我想到了 ...
- 接口测试的N中玩法
在我看来接口测试相对其他类型的测试是比较简单的.对于最常见的HTTP接口,只需要知道接口的 URL.方法.参数类型.返回值 ... 就可以对接口进行测试了. apifox 如果你是入门级选手,那么ap ...
- [C#] 软硬结合第二篇——酷我音乐盒的逆天玩法
1.灵感来源: LZ是纯宅男,一天从早上8:00起一直要呆在电脑旁到晚上12:00左右吧~平时也没人来闲聊几句,刷空间暑假也没啥动态,听音乐吧...~有些确实不好听,于是就不得不打断手头的工作去点击下 ...
- 自定义 checkbox 新玩法 ?
自定义 checkbox 新玩法 ? 第一步:selector 编写 drawable/selector_checkbox_voice.xml <?xml version="1.0&q ...
- 【第1期】腾讯云的1001种玩法征集,Ipad mini和Kindle 等你拿!(文章评审中)
版权声明:本文由阁主的小跟班原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/695994001482226944 来源:腾云 ...
随机推荐
- Lucene4.6至 Lucene6.6的每个迭代对API的改动
由于项目需求,需要将Lucene4.6升级到Lucene6.6,因此我对这之间的所有重要的API改动做了搜集:特别重要的改变加粗显示. Lucene4.7改动: LUCENE-5405: Make S ...
- hdu 3689 Infinite monkey theorem
Infinite monkey theorem Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/ ...
- CentOS查看系统版本号
命令:cat /etc/redhat-release [elsearch@localhost data]$ cat /etc/redhat-release Red Hat Enterprise Lin ...
- JNLP Slave connection error解决办法
Replace in jnlp-file <argument>-workDir</argument> <argument /> with <argume ...
- HDU 1114 Piggy-Bank (dp)
题目链接 Problem Description Before ACM can do anything, a budget must be prepared and the necessary fin ...
- VS开发工具 因插件问题导致 已停止工作 解决办法
解决方案如下:No1. 开始-->所有程序-->Microsoft Visual Studio 2012-->Visual Studio Tools-->VS2012 开发人员 ...
- JQGrid 导出Excel 获取筛选条件
需求描述:页面加载后,进行相关数据搜索,要求点击导出按钮后 下载Excel文件. 思路:希望在点击[导出Excel]按钮时,获取到表格搜索时的filters内容. 在百度.api.jqgrid.js ...
- VMware12序列号
VMware tools怎么删除 rpm -e open-vm-tools-desktop vm12序列号 5A02H-AU243-TZJ49-GTC7K-3C61NVF5XA-FNDDJ-085GZ ...
- Linux-进程间通信(三): 共享内存
1. 共享内存: 共享内存方式可以在多个进程直接共享数据,因为其直接使用内存,不要多余的拷贝,是速度最快的IPC方式: 共享内存有两种实现方式,使用mmap和shm方式,如下图: (1) mmap方式 ...
- hardseed
hardseed https://github.com/yangyangwithgnu/hardseed