分布式版本库——Windows下Git的环境部署以及在GitHub上开源自己的项目


这几天着实忙的焦头烂额,可惜不是搞技术,今天周日,难得闲下来,写篇大家都想学习的Git教程,其实廖雪峰老师的网站已经非常详细了,但是。咳咳,太长了,我就稍微简单点的来概括,其实Git在MAC和Ubuntu上的体验是最好的,不过搞Android开发的我相信绝大多数人还是用windows吧,当然不排除个例

廖雪峰教程:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/

我们为什么用Git?

用前辈的概括是这样的:http://blog.csdn.net/airk000/article/details/38965077

分布式版本控制系统。2005 - 至今,创造者:Linus Torvalds。特点:快速、非线性、分支。

  • 1.强大

    Git在开发伊始的目标就是管理Linux内核。目前为止,使用最久、最经典的Linux kernel v2.6版本的不完全统计代码量是592万行,如果这样的一个工程Git都可以信手拈来的话,除了强大我们还能说什么呢?

  • 2.本地

    Git作为版本控制系统,在其领域并非唯一,同样盛行的还有SVN、CVS等版本控制系统。但不同与Git的是,这两者都是集中式版本控制系统。所谓集中式,就是在协作开发过程中,对代码的修订保存操作必须经由代码托管服务器,也就是必须通过网络(即使是局域网)。也就是说,如果开发者对代码进行了很大量级的修改,也只能等到有网络后再做保存提交工作,这样就导致了代码提交历史混乱,不方便维护与调试。而Git作为分布式版本控制系统,拥有颠覆传统的特性,就是本地化。所谓本地化,即开发进度可以在没有网络的情况下进行保存、修改,使提交历史清晰而又有逻辑。

  • 3.分支

    Git在版本控制中引入了分支的概念。传统系统中,项目的开发线是单一、单调的,而项目的需求通常来讲很有可能出现平行情况,如多渠道发布、不同特性版本等,这样的需求在单一开发线中虽说仍然可以满足,但是总会带来一次又一次的重复工作,甚至无用功。而通过引入分支的概念,Git可以避免这些情况,如一个项目可以轻松的划分为开发分支(线)、发布分支(线),在开发分支中测试稳定的功能、成功修复的BUG可以合并至发布分支,而发布出去的版本又不会包含尚未稳定的开发中功能。多渠道发布,可以给每一个渠道配置一个分支,只是各自的某些配置文件不同,主要的功能、问题修复等进度可以轻松跟进。

  • 4.开源

    Github、Bitbucket等国际知名代码托管服务商均使用Git作为管控系统,在国内,如CSDN、OSChina等IT名站也纷纷推出类似服务。为什么?这就是开源的力量。Git作为较传统版本控制系统的又一不同点——分布式,即人人都是托管商,人人都是服务器,人人都是工作站。传统控制系统,代码归托管服务器集中管理,任何单位对代码的克隆、修改操作都上报至一处,可扩散性不强,并不能很好的迎合开源项目所需要的互动性。而Git,可以说是一次克隆,终生受益。每一个克隆过Git仓储的单位都可以视为一个托管服务器,即可以将完整仓储提供给其他单位,大大提升了项目的扩散性,同时也提升了项目的安全指数,即使最初的项目托管服务器发生故障,任意克隆过该仓储的单位都可以通过简单配置充当新的托管服务器。

  • 5.潮流

    如果你还没有在Github上建立过一个项目,那么你已经落伍了,赶紧利用下班回家看电视的时间恶补一下吧。Git以其灵活、快速、本地化以及独有的分支管控概念迅速征服了广大开发者,Android、Eclipse、Perl、PHP、GNOME等等知名项目都是使用Git进行管理,顺应潮流,拥抱新生,就一定能够获得全新的体验!

一.Git简介

Git是用于Linux内核开发的版本控制工具,和CVS,SVN一类的集中式版本控制工具不同,他采用的是分布式办本科的做法,Linux之父写的能不牛嘛..,Git不需要服务器端软件,就可以运行版本控制,使得源代码的发布和交流及其的方便,而且速度也快,杠杠滴!主要我还是觉得他因为是本地,所以可能速度快点

二.安装

1.msysgit:模拟Linux,只提供命令行操作

下载地址:https://git-for-windows.github.io/

安装

直接一直下一步就OK了

2.TortoiseGIT:开源客户端,GUI图形化界面,它基于msysgit

下载地址:https://download.tortoisegit.org/

安装

这个也是一样的,下一步就可以

好的,现在我们在桌面上点击右键就可以看到

说明我们安装成功了

三.Git Create repository

D:\MyGit 我们在D盘下创建一个文件夹MyGit

然后我们右键,有一个Git Create repository here(在这里创建一个Git的仓库)

我们点击创建,会弹出提示,我们点确定就可以了

然后你就会发现,目录下多了个文件夹(默认是隐藏的,需要你打开可见性)

我们现在来新建一个Test.txt,里面随便写点什么东西,然后上传上去,你会发现,其实和SVN很像

你右键提交会有一个Git Commit ->”master”(主开发库)

但是正当你点击的时候报了一个错误

意思是你必须在提交的时候有用户名和email,你想现在填写吗?肯定点击yes

这里又说什么我们不管,直接点击确定,然后就会出现一些个提示,你填上资料就可以了,然后点确定就可以提交了

这里和SVN的不同之处在于他必须要你写Message,这是个好习惯,更新日志可不能少

好了,提交成功

四.Create GitHub repository

官网:https://github.com/

这才是重头戏,我们要成为大牛之前,还是尽量写一些牛X一点的开源项目,不管是找工作也好,自我提升也罢,都是非常有必要的,拿我们就开始吧!

我们先进去官网,然后我们点击 +New repository(新建一个仓库)

然后就开始填写相关的信息了

创建完成之后是这个样子的

其实我们要用到的还不是只有一个链接:https://github.com/LiuGuiLinAndroid/Android-Developer-Book.git

我们在本地创建一个文件夹,然后右击Git Clone

点击

这个地址就是我们GitHub上的地址

我们把项目给Clone下来了

好了,我们现在可以放东西了,然后提交,一切跟刚才一样,但是这个时候提交的依然是在本地,你的github上并没有刷新,我们实如何把他上传到github上呢?

其实也很简单,我们上传到本地之后再次点击右键TortoiseGit->Push(推送)

我们可以把他推送到github上

但是这里上传的是主仓库,所以需要填写你的账号密码

好的,推动完成,我们现在来看看GitHub上是什么样的吧!!!

现在你的GitHub上就有东西了,我们的教程也OK了,当然,你会说,还有补丁,分支什么的没讲,其实当你入门之后在,这些都是自然而然的事情了,大把的教程,本篇只是作为一个入门,让你多Get一项技能罢了,谢啦!

分布式版本库——Windows下Git的环境部署以及在GitHub上开源自己的项目的更多相关文章

  1. windows下go开发环境部署 (sublime+gosublime+geocode)

    1.下载git.go和sublime免安装版 go下载地址:http://pan.baidu.com/s/1hq1mrDM#path=%252Fgo%252F1.5.2sublime下载地址:http ...

  2. IntelliJ IDEA Windows下Spark开发环境部署

    0x01 环境说明 本地 OS: windows 10 jdk: jdk1.8.0_121 scala: scala-2.11.11 IDE: IntelliJ IDEA ULTIMATE 2017. ...

  3. Windows下Git的下载、安装、设置用户名和邮箱、创建版本库等

    Git官网:https://git-scm.com/ 一.Git下载 官网首页下载,当前最新版本:2.24.1 本人下载的是Git for Windows版本:Git-2.24.1.2-64-bit. ...

  4. Git分布式版本控制系统(下)

    Git分布式版本控制系统(下) 链接:https://pan.baidu.com/s/1CgaEv12cwfbs5RxcNpxdAg 提取码:fytm 复制这段内容后打开百度网盘手机App,操作更方便 ...

  5. 深入学习:Windows下Git入门教程(上)

    一,安装Git: 1.1Linux上安装命令: sudo apt-get install git 1.2在Windows上安装Git: 使用Windows版的msysgit,官方下载地址:http:/ ...

  6. Git版本管理:Windows下Git配置与使用指南

    简要介绍:Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理. 一.安装 软件:msysGit-fullinstall-1.8.1.2 打开之后设置安装路径,默认为 ...

  7. Git版本管理:Windows下Git配置与使用指南 Gitlab

    简要介绍:Git是一个开源的分布式版本控制系统,用以有效.高速的处理从很小到非常大的项目版本管理. 一.安装 软件:msysGit-fullinstall-1.8.1.2 打开之后设置安装路径,默认为 ...

  8. 设置 Quick-Cocos2d-x 在 Windows 下的编译环境

    http://cn.cocos2d-x.org/tutorial/show?id=1304 设置 Quick-Cocos2d-x 在 Windows 下的编译环境 Liao Yulei2014-08- ...

  9. Windows下GIT的使用方法

    文章引用自:Git使用教程    https://www.cnblogs.com/tugenhua0707/p/4050072.html 本文章只限用于Windows,敬请参考 注意:操作命令纯属手敲 ...

随机推荐

  1. NSDictionary writeToFile:atomically: 时失败

    一.现象:如下图,当NSDictionary调用 writeToFile:atomically: 时,如果容器里面包含的对象(即通过 objectForKey: 拿到的对象),为非property l ...

  2. Java安全套接字扩展——JSSE

    上节已经介绍了SSL/TLS协议的通信模式,而对于这些底层协议,如果要每个开发者都自己去实现显然会带来不必要的麻烦,正是为了解决这个问题Java为广大开发者提供了Java安全套接字扩展--JSSE,它 ...

  3. 2.QLabel,QPushButton,QLineEdit,QComboBox,QCheckBox,QRadioButton,QTextEdit,QTextBrowser,QGroupBox,QSl

     1.新建一个空项目(其它项目->空QT项目): 2  添加新文件(选择C++Class) MyWidget.h #ifndef MYWIDGET_H #define MYWIDGET_H ...

  4. 那些年我们一起用过的Hybrid App

    Hybrid App现状分析 Web App 毫无疑问Web App就是成本最低,最快速地解决方案了.尤其是近两年非常流行的响应式设计,Web App市场提供了非常好的实践场地.最近典型的Web Ap ...

  5. ROS(indigo)MoveIt!控制ABB RobotStudio 5.6x 6.0x中机器人运动

    Gazebo以及相关参考文献,参考: ROS(indigo)ABB机器人MoveIt例子 这里需要配置RobotStudio,请参考ROS官网教程.下面列出要点:   window端配置结束后,在Ub ...

  6. Android 四种常见的线程池

    引入线程池的好处 1)提升性能.创建和消耗对象费时费CPU资源 2)防止内存过度消耗.控制活动线程的数量,防止并发线程过多. 我们来看一下线程池的简单的构造 public ThreadPoolExec ...

  7. scala学习笔记5 (隐式转化/参数/类)

    隐式转化: 隐式参数: 隐式类:

  8. JQuery实战---初识JQuery+入门实例

    JQuery在小编的世界中,也就是JavaScript和查询(Query),即是辅助JavaScript开发的库,百度百科对JQuery的介绍比较详细,小伙伴可以东东自己可耐的小爪子,上网进行搜索,说 ...

  9. Hessian探究(一)Hessian入门示例

    一.hessian的maven信息: [html] view plain copy print? <dependency> <groupId>com.caucho</gr ...

  10. UNIX网络编程——I/O复用:select和poll函数

    我们看到TCP客户同时处理两个输入:标准输入和TCP套接字.我们遇到的问题是就在客户阻塞于(标准输入上)fgets调用,服务器进程会被杀死.服务器TCP虽然正确的给客户TCP发送了一个FIN,但是既然 ...