git介绍及使用指南

本文详细介绍了Git的原理、安装过程、常用命令、分支管理、工作流程,并推荐了GitHub Desktop、TortoiseGit和Source Tree等Git客户端。此外,还展示了在Eclipse和IDEA中使用Git的操作步骤,以及GitLab项目管理和冲突解决。
摘要由CSDN通过智能技术生成

git介绍及使用指南

一、git 介绍

C 语言编写的一个分布式版本控制系统

1.git工作原理

avatar


1.Workspace:工作区:本地电脑存放项目文件的地方
2.Index / Stage:暂存区:在使用git管理项目文件的时候,其本地的项目文件会多出一个.git的文件夹,将这个.git文件夹称之为版本库。其中.git文件夹中包含了两个部分,一个是暂存区(Index或者Stage),顾名思义就是暂时存放文件的地方,通常使用add命令将工作区的文件添加到暂存区里
3.Repository:仓库区(或本地仓库):使用commit命令可以将暂存区中的文件添加到本地仓库中
4.Remote:远程仓库:不是在本地仓库中,项目代码在远程git服务器上,比如项目放在github上,就是一个远程仓库,通常使用clone命令将远程仓库拷贝到本地仓库中,开发后推送到远程仓库中即可

2.git 和 svn 区别
  • svn 集中式(有单独的服务器)

avatar

  • git 分布式(每一台都可以存储)

avatar

3.git 和 svn 差异对比
差异点 svn git
系统特点 1.集中式版本控制系统(文档管理很方便)
2.企业内部并行集中开发
3.windows 系统上开发推荐使用
4.克隆一个拥有将近一万个提交(commit),五个分支,每个分支有大约 1500 个文件,用时将近一个小时
1.分布式系统(代码管理很方便)
2.开源项目开发
3.mac,Linux 系统上开发推荐使用
4.克隆一个拥有将近一万个提交(commit),五个分支,每个分支有大约 1500 个文件,用时 1 分钟
灵活性 1.搭载 svn 的服务器出现故障,无法与之交互
2.所有的 svn 操作都需要中央仓库交互(例:拉分支,看日志等)
1.可以单机操作,git 服务器故障也可以在本地 git 仓库工作
2.除了 push 和 pull(或 fetch)操作,其他都可以在本地操作
3.根据自己开发任务任意在本地创建分支 4.日志都是在本地查看,效率较高
分支方面 1.拉分支更像是 copy 一个路径
2.可针对任何子目录进行 branch
3.拉分支的时间较慢,因为拉分支相当于 copy
4.创建完分支后,影响全部成员,每个人都会拥有这个分支
5.多分支并行开发较重(工作较多而且繁琐)
1.我可以在 Git 的任意一个提交点(commit point)开启分支!(git checkout -b newbranch HashId)
2.拉分支时间较快,因为拉分支只是创建文件的指针和 HEAD
3.自己本地创建的分支不会影响其他人
4.比较适合多分支并行开发
5.git checkout hash 值(切回之前的版本,无需版本回退)
版本控制 1.保存前后变化的差异数据,作为版本控制
2.版本号进行控制,每次操作都会产生一个高版本号(svn 的全局版本号,这是 svn 一个较大的特点,git 是 hash 值)
1.git 只关心文件数据的整体发生变化,更像是把文件做快照,文件没有改变时,分支只想这个文件的指针不会改变,文件发生改变,指针指向新版本
\2. 40 位长的哈希值作为版本号,没有先后之分
工作流程 1.每次更改文件之前都得 update 操作,有的时候修改过程中这个文件有更新,commit 不会成功
2.有冲突,会打断提交动作(冲突解决是一个提交速度的竞赛:手快者,先提交,平安无事;手慢者,后提交,可能遇到麻烦的冲突解决。)
1.开始工作前进行 fetch 操作,完成开发工作后 push 操作,有冲突解决冲突
2.git 的提交过程不会被打断,有冲突会标记冲突文件
学习成本 使用起来更方便
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值