Git 是一款免费开源的分布式版本控制系统,处理项目时速度快、占用空间小,学习门槛也不高。它支持本地分支、暂存区域和多种工作流,在这些方面比 Subversion、CVS、Perforce 等工具更灵活。Git gui 则是它的图形化操作界面,不用记复杂命令,以分布式版本库方式运作,不需要服务器端软件就能做版本控制,源代码发布和交流都方便不少。

1、 Git 允许同时存在多个互不干扰的本地分支,创建、合并和删除分支只需几秒钟
2、 可以随时切换上下文:新建分支尝试想法、提交几次、切回原分支打补丁,再回去合并
3、 按角色划分分支:一个分支只保留生产内容,另一个合并测试工作,还有若干日常开发分支
4、 按功能建立分支:每个新功能单独开分支,完成后合并回主线再删除
5、 一次性实验也可以建分支,发现行不通直接删掉,不会影响其他分支
6、 推送到远程仓库时不必推送所有分支,可以只分享其中一个,方便别人尝试新想法
- 几乎所有操作都在本地完成,不像集中式系统那样频繁与服务器通信,速度优势明显
- Git 诞生于 Linux 内核开发,从第一天起就要处理大型仓库,用 C 编写以减少运行开销,速度和性能一直是核心设计目标
- 分布式意味着每次不是检出当前提示,而是克隆整个仓库,每个用户手里都有主服务器的完整备份
- 出现崩溃或损坏时,可以把这些副本推回主服务器,不存在只有一份仓库的单点故障
- 凭借分布式特性和分支系统,几乎可以实现无数种工作流
- Subversion 风格:集中式工作流很常见,只要有人自上次提取后没有新提交,Git 就不会推送,所有开发者推送到同一服务器也能正常运作
- 集成管理器工作流:一名集成管理者负责“保佑”仓库,其他开发者克隆后推送到自己的仓库,再请集成者提取更改,开源项目和 GitHub 仓库常采用这种模式
- 独裁者和中尉工作流:适合大型项目,中尉负责某个子系统并合并相关改动,独裁者从中尉处抽取变更推送到“保佑”仓库,其他人再克隆
- Git 的数据模型保证项目每一部分的加密完整性,每个文件和提交在检出时都会校验,除了指定位置外无法从 Git 中取出别的内容
- 在仓库中改动文件、日期、提交信息或其他数据,都会导致其后所有 ID 变化,因此只要提交 ID 不变,就能确信项目内容和历史未被改动
1、 Git 有暂存区(索引)这个中间区域,可以在正式提交前整理和审核改动
2、 可以只暂存部分文件并提交,而不必提交工作目录中所有被修改的文件,也不用在提交时逐个列出
3、 甚至能只暂存一个文件里部分修改内容,把逻辑上无关的改动分开提交
4、 如果不需要这种精细控制,在 commit 命令中加一个“-a”即可把所有改动加入暂存区
5、 Git 基于 GNU 通用公共许可证版本 2.0 发布,项目选用 GPLv2 来保证自由分享和修改免费软件,确保所有用户免费使用
- 在本地新建一个文件夹 test,选中后点击右键,选择“Git GUI Here”
- 在弹出界面中选择第二个选项,即克隆已经存在的仓库
- 填写 Source Location(源地址)和 Target Directory(目标目录)
- 点击 clone 后,按提示输入 GitHub 的用户名和密码
- 克隆完成后,可以在本地查看已经克隆下来的文件
(您的评论需要经过审核才能显示)
0条评论