Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。Torvalds 开始着手开发 Git 是为了作为一种过渡方案来替代 BitKeeper,后者之前一直是 Linux 内核开发人员在全球使用的主要源代码工具。开放源码社区中的有些人觉得 BitKeeper 的许可证并不适合开放源码社区的工作,因此 Torvalds 决定着手研究许可证更为灵活的版本控制系统。尽管最初 Git 的开发是为了辅助 Linux 内核开发的过程,但是我们已经发现在很多其他自由软件项目中也使用了 Git。例如 最近就迁移到 Git 上来了,很多 Freedesktop 的项目也迁移到了 Git 上。
保存点 : Git的保存点可以追踪源码中的文件, 并能得到某一个时间点上的整个工程项目额状态; 可以在该保存点将多人提交的源码合并, 也可以会退到某一个保存点上;
Git离线操作性 :Git可以离线进行代码提交, 因此它称得上是完全的分布式处理, Git所有的操作不需要在线进行; 这意味着Git的速度要比SVN等工具快得多, 因为SVN等工具需要在线时才能操作, 如果网络环境不好, 提交代码会变得非常缓慢;
Git基于快照 : SVN等老式版本控制工具是将提交点保存成补丁文件, Git提交是将提交点指向提交时的项目快照, 提交的东西包含一些元数据(作者, 日期, GPG等);
Git的分支和合并 : 分支模型是Git最显著的特点, 因为这改变了开发者的开发模式, SVN等版本控制工具将每个分支都要放在不同的目录中, Git可以在同一个目录中切换不同的分支;
分支即时性 : 创建和切换分支几乎是同时进行的, 用户可以上传一部分分支, 另外一部分分支可以隐藏在本地, 不必将所有的分支都上传到GitHub中去;
分支灵活性 : 用户可以随时 创建 合并 删除分支, 多人实现不同的功能, 可以创建多个分支进行开发, 之后进行分支合并, 这种方式使开发变得快速, 简单, 安全。
二、Git安装
安装的话可以一路默认,路径可以自己指定。有关安装时参数的详细介绍,大家可以去这里看看,里面做了详细的介绍 http://www.ihref.com/read-16377.html
安装完后到你的安装目录下,找到一个叫做 Git Bash.vbs文件。配置同步需要使用到这个文件。双击打开,我们会得到一个命令行控制台界面。接下来我们来配置Git吧。
- Git上有三种传输方式(如下图),我们现在来选择SSH方式传输。在控制台输入ssh-keygen -t rsa -C "XXXXX@163.com" 。
GitHub邮箱 : 该命令后面的邮箱就是GitHub的注册邮箱(没有账号的请先在Github上申请);
路径选择 : 使用该命令之后, 会出现提示选择ssh-key生成路径, 这里直接点回车默认即可, 生成的ssh-key在默认路径中;
密码确认 : 自设的一个密码。这里我就不使用密码进行登录了。
- 将SSH配置到GitHub网站中。进入生成的ssh目录 : C:\Documents and Settings\Administrator\.ssh (或者 C:\Users\自己电脑用户名\.ssh)中, 使用记事本打开 id_rsa.pub 文件, 将该文件中的内容复制;
进入GitHub网站 : 登录GitHub, 选择Setting 进行用户设置:
在左边的列表下找到SSH Keys的选项:
然后将SSH Key值复制进去
验证是否配置成功 :
ssh -T git@github.com
验证时可能让你输入YES。
成功提示 : 如果出现Hi cpacm! You’ve successfully authenticated, but GitHub does not provide shell access. 就说明配置成功, 可以连接上GitHub;
- 配置本地邮箱
用户名邮箱作用 : 我们需要设置一个用户名 和 邮箱, 这是用来上传本地仓库到GitHub中, 在GitHub中显示代码上传者;
使用命令 :
git config --global user.name "cpacm" //设置用户名 git config --global user.email "xxx@163.com" //设置邮箱,不要求是注册邮箱。
到此Git的安装基本上就可以了。
三、Git的使用
- 我们现在会发现右键菜单新出来了三个选项
功能分别是将本地作为本地仓库,打开Git Gui,打开Git Bash命令控制台。
首先我们选择一个文件夹作为本地仓库
在目录中右键执行 git init here
,就可以创建一个 Git 仓库了。
查看有哪些文件,使用ls指令。比如,我们这个目录,里头有个test.tet文件,可以用如下:
$ ls
test.txt
也可以用cd来指定地址,将其仓库化
$ cd 路径
$ git init
Initialized empty Git repository in /opt/konnichiwa/.git/# 在 /opt/konnichiwa/.git 目录初始化空 Git 仓库完毕。
现在你可以看到在你的项目目录中有个 .git
的子目录。 这就是你的 Git 仓库了,所有有关你的此项目的快照数据都存放在这里。
简而言之,用 git init
来在目录中创建新的 Git 仓库。 你可以在任何时候、任何目录中这么做,完全是本地化的。
- clone一个项目到本地
如果你需要与他人合作一个项目,或者想要复制一个项目,看看代码,你就可以克隆那个项目。 执行 git clone [url]
,[url] 为你想要复制的项目地址,就可以了。
$ git clone git://github.com/schacon/simplegit.git
- 添加文件到缓存,并上传
在本地建立仓库后,右键选项会产生变化
第一项:添加所有文件到本地缓存;第二项:提交工具,若本地缓存有变化,则会显示变化
第三项,提交的历史记录,通常以一次提交为一次记录。第四项:Git Gui管理工具,如上图。第五项:Git分支。第六项:控制台。然后填写描述点击上传按钮就可以上传了。
- 简单流程图
四、Git客户端
Git有一个专门的客户端,只要安装了它,以上的这些其实都可以不用这么麻烦的实现。
地址:https://windows.github.com/
- GitHub的安装
基本上按步骤就行了,(就是下安装程序时可能会失败,我就是在这里卡了好久~)。
安装完后会有这两个东西。打开GitHub,按照提示来进行设置。
- 设置界面
左上角会有添加项目的按钮,右上角则是设置按钮,打开设置,选择options
- 添加项目和Clone项目
信息一目了然,我就不作多讲了。关于Clone,想要Clone其他人开源的项目,请使用shell来进行。 - {敏感词}
- 接着我在项目中添加了一个txt文件,{敏感词}就会实时的出现变化,此时我们可以将变动提交到本地缓存中。
- 分支
建立和管理分支
- 删除项目
最后一项就是移除,但文件还是会存在的。其他项功能就跟字面意思一样。
在GitHub网站上删除项目
进入想要删除的项目页面,右侧有个功能导航,选择Setting
跳转后拉到最后面就有删除项目的按钮。
以上就是我简单安装完Git的全部了。以后项目的代码我都会放在Git上,可以方便我尽快熟悉Git的使用。
参考文章:(1)Git版本控制软件结合GitHub从入门到精通常用命令学习手册 http://www.ihref.com/read-16369.html
(2)Github for Windows使用图文教程 http://www.cr173.com/html/15618_1.html
========================================
作者:cpacm
地址:http://www.cnblogs.com/cpacm/p/3939008.html