git和svn的区别和优缺点