git 初识
2024-08-24 19:13:18
现在平时用的都是SVN,感觉还是挺好用的。就是有的时候解决冲突的时候有点麻烦。但这样也是不可避免的。
今天看来下GIT,同样是版本控制,GIT的原理,和SVN还是不一样的。我个人的理解,SVN是对每个文件的前后版本进行比较。而GIT是对整体进行比较。
SVN每次提交都检查文件是否发生变化,如果变化,如果不冲突,则合并。如果冲突,则需要用户解决冲突。需要注意到是,SVN管理的版本,都集中在服务器上。而客户端并不能保证一定是最新的。
。
GIT的则是分布式的版本控制工具。每次更新的时候,都会将服务器上的最新版本都COPY到本地。这样即使服务器挂掉,也可以保证本地版本是最新的。
另外GIT在提交的时候,显示提交到本地,如果需要提交到服务器,可以再提交到后台。
GIT可以有不同的分支,各个分支之间都没有影响。比如有个分支是发布分支,这个分支上的代码是可以正确编译并运行的代码。如果在这个分支上修改的话,则可能会到时BUG,显然会影响到软件的发布。GIT可以使用 另外 一个分支,用户
可以创建一个DEVELOPE分支,将发布分支上的代码COPY过去,然后在DEVELOPE分支上修改,让后确认可以,再将合并到发布分支上。
在 Git 内都只有三种状态:已提交(committed),已修改(modified)和已暂存(staged)。已提交表示该文件已经被安全地保存在本地数据库 中了;已修改表示修改了某个文件,但还没有提交保存;已暂存表示把已修改的文件放在下次提交时要保存的清单中。
由此我们看到 Git 管理项目时,文件流转的三个工作区域:Git 的工作目录,暂存区域,以及本地仓库。
图 1-6. 工作目录,暂存区域,以及本地仓库
最新文章
- java多线程-线程创建
- Android M新特性之Behavior Changes
- nopcommerce商城系统--如何编写一个插件
- java web 的标准目录结构(zz)
- oracle通过透明网关连接mysql的配置
- std::map的操作:插入、修改、删除和遍历
- Codevs_1048_石子归并_(动态规划)
- React入门1
- Swift--基础(二)元组 断言 错误处理
- 有向强连通分支Tarjan算法
- 对于java用发送http请求,请求内容为xml格式
- C程序中引用自定义的C函数模块
- Excel更改单元格格式后无效
- km算法入门
- Object.prototype.toString.call(obj)使用方法以及原理
- RobotFramework环境配置:默认以管理员权限运行cmd
- so插件化
- ios真机调试错误解决:Installation of apps is prohibited by a policy on the device
- js模拟栈
- Django中模型层中ORM的多表操作