Git和SVN及其区别
一、Git(分布式版本控制)
Git 旨在快速,高效地处理从小型到大型项目的所有事务。Git 易于学习, 具有闪电般快速的性能和廉价本地分支,便捷的临时区域、多个工作流程等功能。
git每台电脑都有一个版本库,可以在本地做版本管理。而且每个工作成员可以任意在自己的本地版本库开启无限个分支,并且Git的分支名可以使用不同名字的。
但是Git 没有严格的权限管理控制,一般通过系统设置文件读写权限的方式来做权限控制。工作目录只能是整个项目。比如 checkout,建分支,都是基于整个项目的。而 svn 可以基于项目中的某一个目录。
二、SVN(集中式版本控制)
SVN就是用于多个人共同开发同一个项目,共用资源的目的。SVN允许一个文件有任意多的可命名属性,功能十分完全。在SVN,分支是一个完整的目录,且这个目录拥有完整的实际文件。
总结:
1、GIT是分布式的,SVN不是分布式。
2、GIT把内容按元数据方式存储,而SVN是按文件。
3、GIT分支和SVN的分支不同。
4、GIT没有一个全局的版本号,而SVN有。
5、GIT的内容完整性要优于SVN。
SVN在Windows上上传新项目以及更新代码
一、新项目上传至svn
1、安装TortoiseSVN,安装后应用如图

3、在您所需的目录位置新建项目文件夹,此处文件夹管理规则参照IDEA上传自动创建规则(branches[分支],tags[标签],trunk[主干])

因为在已有项目Checkout,点确认后此时会提示Targer folder is not empty,因为我们远程仓库目前并没有任何文件代码,所以直接点击Checkout继续


5、项目目录右键选择TortoiseSVN –> Propertites,按图选择和填写忽略上传文件和文件夹,点击确认后进行下一步


6、项目目录右键选择TortoiseSVN –> add,查看勾选文件是否都是所需上传的文件,确认后点击ok,等待加载入本地仓库
7、项目目录右键选择SVN Commit…,弹窗Message处填写相应提交信息,点击ok提交,等待Commit远程仓库完成
二、更新项目代码
1、远程仓库有更新时,pull代码则项目目录右键选择SVN Update
2、本地代码更新提交远程仓库,步骤同新项目上传6、7步骤
SVN在IDE上上传新项目以及更新代码
一、IDEA(操作版本2020.2)
1、安装TortoiseSVN,安装后应用如图
2、IDEA界面下点击打开File -> Settings(Ctrl+Alt+S) ->Version Control ->Subversion,在红框处选择TortoiseSVN安装目录下bin里的svn.exe

3、点击打开File -> Settings(Ctrl+Alt+S) ->Version Control,按图点击红色添加按钮并填写橙色框内项目文件夹地址及相应版本管理形式(此处选择Subversion),而后点击Apply并点击OK,无误则项目文件变为红色
存在版本在主页左上角点击选择VCS -> Enable Version Control Integration,选择框中选择Subversion项目便可加入版本管理且项目文件变红,操作和3中橙色框内选择时非选Directory而选Project一致

4、按图中指示箭头从左到右点击,最左点击为右击项目名称,最后点击弹窗如图2,点击红框+号填写SVN服务器项目存放地址,此处可能会验证您的信息,相应的账号密码请自行按提示填写,完成后点击Share,其他默认(如1.8 format),等待创建远程仓库文件夹和项目入本地仓库,等带项目文件变绿时,则表示入库本地成功


5、忽略无需上传文件和文件夹,操作如图,弹框选择和填写如图,完成后点击OK。


重复图一(右键项目 -> Subversion -> Revert…),最后箭头选择将Set Property改为Revert,弹窗里选择前面填写忽略的文件或文件夹,大致如图,切记红框处需取消勾选,点击Revert后相应文件或文件夹变为橙色

6、提交至远程仓库,右键项目 -> Subversion -> Commit Directory…,弹框里确认Push项目文件是否有误,Commit Message处填写相应提交信息,点击Commit,弹窗继续点击Commit,而后等待Push项目至远程SVN仓库完成,完成后会有提示且项目各文件和文件夹名称变为白色
至此完成项目提交至SVN