前言:做为一名码农,若是你告诉你的小伙伴你不会使用版本控制,那么你将会被小伙伴所鄙视,这个文章从区别带你领略他们的优缺点.java
svn至关因而一个云存储,必需要借助网络,才可以实时的更新和提交数据,版本放在了远程git
git至关因而一个本地存储,在不提交和更新版本文件的时候,不须要借助网络,版本控制放在了本地web
1.svn的步骤缓存
2.git步骤网络
1.单仓库匿名用户app
#
号给去掉,把read改成write,以下:2.单仓库受权用户的设置svn
须要修改仓库conf目录中的三个配置文件:svnserve.conf、passwd、authzpost
注意:这里在作检出时候必须是svn://127.0.0.1,不然会出错,并且有时候也要考虑到缓存的问题网站
冲突出现的缘由是:因为不一样用户对一个文件的同一行的内容进行的编辑,因此会出现冲突,后提交的用户必需要解决冲突才能够提交.spa
解决的方法:1.强制的合并 2.提交前先更新数据
把多余的符号去除就能够强制合并了
以管理员的方式执行如下命令: sc create SVNService binpath= "D:\svn\server\bin\svnserve.exe --service -r D:\app\" start= auto
抽象介绍:所谓钩子就是与一些版本库事件触发的程序,例如新修订版本的建立,或是未版本化属性的修改。每一个钩子都会被告满足够多的信息,包括那是什么事件,所操做的对象,和触发事件的用户名。经过钩子的输出或返回状态,钩子程序能让工做继续、中止或是以某种方式挂起。
利用提交前的钩子让用户在提交代码前强制用户必须填写备注信息(了解)。
利用提交后的钩子把svn仓库代码实时同步到网站web目录(重点掌握,开发中使用较多)
修改两个文件就能够实现钩子事件
post-commit.bat内容为:
SET SVN="D:\svn\sever\bin\svn.exe" SET DIR="D:\local.com\blog" SVN update %DIR% --username dashen --password dashen123
2.后钩子