【Git】1. Git概述
Git是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目。
Git易于学习,占地面积小,性能极快。它具有廉价的本地库,方便的暂存区域和多个工作流分支等特性。
性能要优于Subversion、CVS、Perforce、ClearCase等版本控制工具。
附上官网
一、什么是版本控制
版本控制就是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统。其实最重要的就是可以记录文件修改历史记录,从而让用户可以查看历史版本,方便版本切换。
那么为什么要用版本控制,其实是为了更好的团队协作。比如一个项目的代码文件,不止你一个人在写,那么你先提交之后,别人的那份没你的代码,当他再次提交,你的代码就
被覆盖掉了。
二、集中式和分布式
版本控制工具大概可以分为2类:集中式和分布式。
何为集中式?
比如SVN,会有一个单一的集中管理的服务器,保存了所有文件的修订版本。所有参与协同工作的人都通过客户端连接这台服务器,取出最新的文件,或者提交更新文件。
这种系统有个非常大的缺点,那就是中央服务器的单点故障,比如宕机了1小时,那么这一小时里谁都没法提交更新,也就没法协同工作。
何为分布式?
Git这种即为分布式版本控制工具,客户端首先从远程仓库把代码仓库完整的克隆下来到本地库,从而可以在本地进行版本的控制。就算远程服务器挂掉了也可以进行开发,
只是没办法把本地代码推送到远程仓库而已。另外,每个人clone到本地都是一个完整的项目,里面包含了历史记录等,更加安全,再也不怕单点故障问题。
三、git工作机制
git功能强大,但是工作机制并不复杂,毕竟Linus只花了2周时间就一个人开发完了git系统。你说啥?Linus是谁?
林大佬就是linux之父,所以git跟linux系统是一个爸爸。期初在长达10年的时间里,林大佬都是自己手动去合linux的代码的,后来提交代码的人越来越多,自己合实在
太累了。后来有个公司开发了一个版本控制的商业软件,出于人道主义就免费给linux社区使用,只要别破解就行。但是后来还是有个程序员破解了它,使用权被公司收回了,
无奈之下,林大佬只能用C语言开发了这个分布式版本控制系统了。
- 工作区:就是我们写代码的地方,具体指代码存放的磁盘目录的位置。
- 暂存区:为了让git能追踪到你在工作区写的代码,要把代码添加到暂存区。
- 本地库:把暂存区的代码提交到本地库,就会生成对应的历史版本了,这个历史版本是删不掉的。
四、git和代码托管中心
代码托管中心是基于网络服务器的远程代码仓库,一般称为远程库。比如,基于互联网的GitHub
、Gitee
,和基于局域网的GitLab
。
当代码提交到本地库后,就可以推送到远程库了,也就是用git push
命令。
五、安装
安装就不说了,打开官网,下载对应系统的最新版本,一路默认安装就行了。
下一章整理git常用命令。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY