Git和SVN的区别?
a、存储方式不一样 Git按照元数据的方式将文件的一个版本存入了一个类似与K/V数据库,而SVN是按照文件的方式进行一个存储。Git的内部有一个类似于K/V的数据库,我把他理解为是一个Map<K,V>,我们将内容存储到Git的数据库内后,Git会返回一个Key给我们,这个Key是唯一的(把一模一样的内容上传进去,这个key也是唯一的)。演示如下: 1、使用git init demo命令创建一个Git仓库; 2、使用cd demo进入demo这个Git仓库下; 3、使用echo 'this is demo' >> demo.txt命令创建一个demo.txt文件,并在文件内写入this is demo;使用ls命令查看是否有demo.txt这个文件;使用vim demo.txt查看demo.txt文件内是否为’this is demo’; 4、使用git hash-object -w demo.txt命令将demo.txt文件里面的内容存储进Git的数据库中,其中第二个红色框框的内的值"25b3c07137f646bf05bdd00c42d2a4c5bc831bb7"就是Git的数据库返回给我们的K; 5、可以通过git cat-file -p 25b3c07137f646bf05bdd00c42d2a4c5bc831bb7命令去将值取出来; 6