开发都会使用版本控制软件,以便团队多人协同开发,以及程序源码的版本管理。目前比较主流以及易用的版本控制软件是Git,本文介绍一下,如何在开发计算机上快速安装Git客户端,并获取远程仓库的源码库。
l 几个需要了解的相关内容
• Git-scm和msysGit的区别
- git-scm.com是版本控制软件Git的官方网站。
- msysGit是一个项目,它在Windows本地平台上编译出Git,他们发行的“Git for Windows”二进制文件就是Windows下的官方发行版本。所以,如果你只需要在Windows上使用Git,那么你从git-scm.com下载“Git for Windows”即可。列表内容
• Git和GitHub的区别
- git是一种版本控制系统。
- github是一个网站,给用户提供git服务。这样你就不用自己部署git系统,直接用注册个账号,用他们提供的git服务就可以。
l 本地Git客户端安装,需要安装如下软件(按下面顺序安装)。
安装过程可以按照程序的默认选项,都选择“下一步”安装完成。
-
Git客户端程序。
- Git目前最新版本2.6.1
- Git官网下载地址: http://git-scm.com/
-
Git客户端图形化操作程序 TortoiseGit。
- TortoiseGit目前最新版本1.8.15.0
- TortoiseGit官网下载地址:http://tortoisegit.org/download/
-
先到TortoiseGit 程序组中调用Settings 进行设置.
隐藏的菜单在文件夹中按右键时同时按下Shift 就能显示出来.
4. 日常用法
(0)从远程仓库获取项目
选择一个你要存放项目源码的目录,并在该目录下单击鼠标右键,弹出右键菜单如下
在文件夹中按右键, 选择Git Create repository here 就可以创建库了.
在出现的窗口中, 不勾选选项, 直接按OK
在目录中就会出现一个名为.git 的隐藏文件夹, 所有库的相关内容都会
存在这个文件夹中. 以后不管这个项目添加多少个文件夹, 整个库只会有这
一个管理文件夹, 这和CVS 和SVN 有较大差异.
(2) 添加文件及文件夹
在文件夹中按右键, 选Git Commit -> “master”…
接着填写Message, 勾选Whole Project 选项, 这样Commit 的时候可以将整个
项目的信息全部Commit 上去, 可以实现不需要打Tag 就能Checkout 出每次
Commit 的内容.
接着修改foo1.txt, 再创建一个文件夹dir1, 并且放置一个foo2.txt 在dir1 目
录中, 再次commit 时, 就可以将dir1 和foo2.txt 一起加入了.
(3) 创建分支
在目录中选择TortoiseGit 再选Create Branch…就可以创建分支了.
勾选Switch to new branch, 就可以跳转到建立好的分支上.
添加一个foo3.txt 后, commit 修改.
接着通过Switch/Checkout….可以切换回master 分支
再创建一个Branch2, 在Branch2 中添加foo4.txt. 下面就可以看版本发展的
情况了.
(4) 看分支情况及修改log
通过选择Show log, 可以看分支情况和修改log
勾选All Branches 可以看到所有分支的情况.在Message 列中, 绿色的是分支, 红色的是当前工作分支.
(5) 比较版本差异
通过按Shift 和鼠标左键, 可以选中两个版本, 接着再按鼠标右键, 选中Compare revisions, 就可以比较两个revision 了.
比较主版本和Branch2, 可以发现是添加了foo4.txt
(6) 合并分支
首先切换到master 分支, 接着选Merge
就可以实现将分支合并到主版本
a) Stash
Git 提供了一个暂存修改的功能, 称为Stash, 在一些程序进行了修改, 但还不想commit 成revision 时, 就可以将这些修改Stash 起来, 等到后面需要时再将它
们Pop 出来.
b) 忽略文件
一些编辑器在修改文件后会产生bak 文件, 一般不希望这些备份文件也加入库中, 可以选中一个.bak 文件, 然后选择Add to ignore list 中的*.bak, 这样bak 文
件以后就不会被commit 了.
忽略的文件是通过在项目的目录中添加一个.gitignore 文件实现的, 因此也要将.gitignore 加入忽略文件列表中.