Git&Github学习day1

Git&Github

本人本次分五大部分进行学习:1.版本控制;2.Git简介;3.Git命令行操作;4.Git图形化界面操作;5.Gitlab服务器环境搭建.

版本控制

项目涉及很多类、很多方法时,改代码不利于开发和维护。在之前版本代码上进行修改,能简化操作提高效率。如果出错,可以回滚版本。所以需要进行版本控制(即记录)。从团队的角度来看,多人开发同一项目时可能需要开发同一类,一人开发完后,另一人可以直接下载之后在其基础上进行扩展他所需要的功能。但当两人同时修改且都未上传时,其一上传,另一个再上传,第一个人上传的会被覆盖。版本控制本身是一个思想(从工程设计领域起源),在IT开发过程中使用版本控制的思想管理代码的版本迭代。
具备的功能:

  1. 协同修改:多人并行不悖的修改服务器端的同一文件;
  2. 数据备份:不仅保存目录和文件的当前状态,还能够保存每一个提交过的历史状态;
  3. 版本管理:保存每一个版本时不保存重复的数据,节约存储空间,提交运行效率。SVN采用增量式管理,Git采取文件系统快照方式;
  4. 权限控制:对团队中参与开发的人员进行权限控制,对团队外开发者贡献的代码进行审核-Git独有;
  5. 历史记录:查看修改人、修改时间、修改内容、日志信息。将本地文件恢复到某一个历史状态;
  6. 分支管理:允许开发团队在工作过程中多条生产线同时推进任务,进一步提高效率;

控制工具分类:
集中式版本控制工具:
代表:CVS、SVN、VSS…
简要描述:每一个开发人员对应一个客户端,文件和版本信息存储在服务器端。和服务器进行交互。(服务器宕机,直接GG。只有本机的历史版本保留,含单点故障问题。)
分布式版本控制工具:
代表:Git、Mercurial、Bazaar、Darcs…
简要描述:每个人都是服务器端,每个人都有历史版本。但其也需要一个远程库。避免单点故障。

Git的优势

大部分操作在本地完成,不需要联网
完整性保证(hash操作)
尽可能添加数据而不是删除或修改数据(减少不可逆操作)
分支操作非常快捷流畅
与Linux命令全面兼容

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值