Git 64位
Git 64位安装教程

Git 64 位客户端是免费、开源的分布式版本控制系统,用于 Linux 内核开发的版本控制工具,Git 简单易学,具有小尺寸以闪电般快速的性能,它胜过 SCM 工具,如颠覆,CVS,Perforce 公司,和 ClearCase 与像廉价的本地分支,便捷的中转区,和多个工作流功能。与 CVS、Subversion 一类的集中式版本控制工具不同,它采用了分布式版本库的作法,不需要服务器端软件,就可以运作版本控制,使得源代码的发布和交流极其方便。Git 的速度很快,这对于诸如 Linux 内核这样的大项目来说自然很重要。Git 最为出色的是它的合并追踪(merge tracing)能力。
Git 功能
- 从服务器上克隆完整的 Git 仓库 (包括代码和版本信息) 到单机上。
- 在自己的机器上根据不同的开发目的,创建分支,修改代码。
- 在单机上自己创建的分支上提交代码。
- 在单机上合并分支。
- 把服务器上最新版的代码 fetch 下来,然后跟自己的主分支合并。
- 生成补丁 (patch),把补丁发送给主开发者。
- 看主开发者的反馈,如果主开发者发现两个一般开发者之间有冲突 (他们之间可以合作解决的冲突),就会要求他们先解决冲突,然后再由其中一个人提交。如果主开发者可以自己解决,或者没有冲突,就通过。
- 一般开发者之间解决冲突的方法,开发者之间可以使用 pull 命令解决冲突,解决完冲突之后再向主开发者提交补丁。
Git 与 SVN 有什么区别?
Git,大家都知道是一个分布式版本控制系统,不需要中央服务器,因为你的电脑就是它的版本库,因此也可以脱机使用。那么问题来了,到底是怎么工作的呢?比如说自己在电脑上改了文件 A,其他人也在电脑上改了文件 A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。
SVN 自然是一个集中式版本控制系统,是需要中央服务器支持的,所有版本库都存放于此。因此,工作的时候需要一直连接服务器,结束的时候需要将完成的工作推送给服务器保存。从此看来,你必须是在有网络的情况下才能开展工作,如果出差在高铁上,你就没法像 GIT 一样充分利用时间了。
Git 说明
Torvalds 开始着手开发 Git 是为了作为一种过渡方案来替代 BitKeeper,后者之前一直是 Linux 内核开发人员在全球使用的主要源代码工具。开放源码社区中的有些人觉得 BitKeeper 的许可证并不适合开放源码社区的工作,因此 Torvalds 决定着手研究许可证更为灵活的版本控制系统。尽管最初 Git 的开发是为了辅助 Linux 内核开发的过程,但是我们已经发现在很多其他自由软件项目中也使用了 Git。例如 最近就迁移到 Git 上来了,很多 Freedesktop 的项目也迁移到了 Git 上。
Git 特色
Git 功能确实使其与几乎所有其他 SCM 区别开来的是它的分支模型。Git 允许并鼓励您拥有多个可以完全相互独立的本地分支。创建,合并和删除这些开发线需要几秒钟。
这意味着您可以执行以下操作:
无摩擦环境切换。创建一个分支来尝试一个想法,提交几次,切换回你分支的位置,应用补丁,切换回你正在试验的地方,并将其合并。
基于角色的代码行。有一个分支,它总是只包含生产的东西,另一个你合并用于测试的分支,以及几个较小的分支用于日常工作。
基于特征的工作流程。为您正在处理的每个新功能创建新的分支,以便您可以在它们之间无缝切换,然后在该功能合并到主线时删除每个分支。
一次性实验。创建一个分支进行实验,意识到它不会起作用,只是删除它 - 放弃工作 - 没有其他人见过它(即使你在此期间推动了其他分支)。
分行
值得注意的是,当您推送到远程存储库时,您不必推送所有分支。您可以选择仅共享其中一个分支,其中一些分支或全部分支。这往往会让人们尝试新的想法,而不必担心必须计划如何以及何时将其合并或与他人分享。
有一些方法可以通过其他系统完成其中的一些工作,但所涉及的工作要困难得多且容易出错。Git 使这个过程变得异常简单,它改变了大多数开发人员学习时的工作方式。
Git 安装说明
最早 Git 是在 Linux 上开发的,很长一段时间内,Git 也只能在 Linux 和 Unix 系统上跑。不过,慢慢地有人把它移植到了 Windows 上。现在,Git 可以在 Linux、Unix、Mac 和 Windows 这几大平台上正常运行了。
要使用 Git,第一步当然是安装 Git 了。根据你当前使用的平台来阅读下面的文字:
一、在 Linux 上安装 Git
首先,你可以试着输入 git,看看系统有没有安装 Git:
$ gitThe program 'git' is currently not installed. You can install it by typing:sudo apt-get install git
像上面的命令,有很多 Linux 会友好地告诉你 Git 没有安装,还会告诉你如何安装 Git。
如果你碰巧用 Debian 或 Ubuntu Linux,通过一条 sudo apt-get install git 就可以直接完成 Git 的安装,非常简单。
老一点的 Debian 或 Ubuntu Linux,要把命令改为 sudo apt-get install git-core,因为以前有个软件也叫 GIT(GNU Interactive Tools),结果 Git 就只能叫 git-core 了。由于 Git 名气实在太大,后来就把 GNU Interactive Tools 改成 gnuit,git-core 正式改为 git。
如果是其他 Linux 版本,可以直接通过源码安装。先从 Git 官网下载源码,然后解压,依次输入:./config,make,sudo make install 这几个命令安装就好了。
在 Mac OS X 上安装 Git
如果你正在使用 Mac 做开发,有两种安装 Git 的方法。
一是安装 homebrew,然后通过 homebrew 安装 Git。
第二种方法更简单,也是推荐的方法,就是直接从 AppStore 安装 Xcode,Xcode 集成了 Git,不过默认没有安装,你需要运行 Xcode,选择菜单“Xcode”->“Preferences”,在弹出窗口中找到“Downloads”,选择“Command Line Tools”,点“Install”就可以完成安装了。


Xcode 是 Apple 官方 IDE,功能非常强大,是开发 Mac 和 iOS App 的必选装备,而且是免费的!
在 Windows 上安装 Git
在 Windows 上使用 Git,可以从 Git 官网直接下载安装程序,(网速慢的同学请移步国内镜像),然后按默认选项安装即可。
安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明 Git 安装成功!

安装完成后,还需要最后一步设置,在命令行输入:
$ git config --global user.name "Your Name"$ git config --global user.email "email@example.com"
因为 Git 是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和 Email 地址。你也许会担心,如果有人故意冒充别人怎么办?这个不必担心,首先我们相信大家都是善良无知的群众,其次,真的有冒充的也是有办法可查的。
注意 git config 命令的--global 参数,用了这个参数,表示你这台机器上所有的 Git 仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和 Email 地址。
Git 本地版本控制系统
很多人选择的版本控制方法是将文件复制到另一个目录(如果它们很聪明,可能是带时间戳的目录)。这种方法很常见,因为它非常简单,但也非常容易出错。很容易忘记你所在的目录并意外写入错误的文件或复制你不想要的文件。
为了解决这个问题,程序员很久以前开发了一个本地 VCS,它有一个简单的数据库,可以对文件的所有更改进行修订控制。

最受欢迎的 VCS 工具之一是名为 RCS 的系统,它现在仍然与许多计算机一起分发。RCS 的工作原理是在磁盘上以特殊格式保存补丁集(即文件之间的差异); 然后,它可以通过添加所有补丁来重新创建任何文件在任何时间点的样子。
Git 集中版本控制系统
人们遇到的下一个主要问题是他们需要与其他系统上的开发人员协作。为了解决这个问题,开发了集中版本控制系统(CVCS)。这些系统(例如 CVS,Subversion 和 Perforce)具有包含所有版本化文件的单个服务器,以及从该中心位置检出文件的许多客户端。多年来,这一直是版本控制的标准。

此设置提供了许多优势,尤其是在本地 VCS 上。例如,每个人都知道项目中的其他人正在做什么。管理员可以对谁可以做什么进行细粒度的控制,管理 CVCS 比处理每个客户端上的本地数据库要容易得多。
但是,这种设置也有一些严重的缺点。最明显的是集中式服务器所代表的单点故障。如果该服务器停机一小时,那么在那个小时内,任何人都无法进行协作或将版本化更改保存到他们正在处理的任何内容中。如果中央数据库所在的硬盘损坏,并且没有保留适当的备份,那么您绝对会丢失所有内容 - 项目的整个历史记录,除了人们碰巧在本地计算机上发生的任何单个快照。本地 VCS 系统也遇到同样的问题 - 只要您在一个地方拥有项目的整个历史记录,就有可能失去一切。
Git 分布式版本控制系统
这就是分布式版本控制系统(DVCS)介入的地方。在 DVCS(例如 Git,Mercurial,Bazaar 或 Darcs)中,客户端不只是查看文件的最新快照; 相反,它们完全镜像了存储库,包括其完整的历史记录。因此,如果任何服务器死机,并且这些系统通过该服务器进行协作,则可以将任何客户端存储库复制回服务器以还原它。每个克隆都是所有数据的完整备份。

此外,许多这些系统可以很好地处理他们可以使用的多个远程存储库,因此您可以在同一个项目中以不同的方式与不同的人群进行协作。这允许您设置在集中式系统中不可能的多种类型的工作流,例如分层模型。
更新日志
暂无版本更新说明
