在phpstorm中svn的使用
目 录
1.搭建svn环境
1.1搭建svn服务端
1.2创建svn用户和密码
2.开始在phpstorm中链接svn
2.1打开Subversion
2.2 输入svn地址
2.3选择导出文件,进行文件的检出
2.4报错处理
2.5本地检出
2.6进行项目检出
2.7查看VCS目录
2.8上传文件
2.9更新文件
3.模拟多用户更新,上传文件
3.1模拟多用户登陆
3.2登录新的用户更新项目
3.3编写文件提交更新
3.4展示更新改变
3.5合并svn中两个项目
3.6查看本地历史记录
3.7show Changes
3.8查看版本历史记录
4.提交问题解析
4.1两用户修改同一文件问题
4.2提交图片等非php或html的文件问题
1.搭建svn环境
1.1搭建svn服务端
在搭建好svn服务器端以后,我们要创建新的repositories,建好之后会产生一个URL地址,一定要记下来。
1.2创建svn用户和密码
建好自己的库以后,创建用户和密码,然后别的用户可通过他的电脑连接到你的电脑上的服务端。
基本的svn环境就搭建好了
2.开始在phpstorm中链接svn
VCS是版本控制系统,svn是版本控制器
2.1打开Subversion
打开PhpStorm,找到工具 VCS—>Checkout from Version Control—>Subversion ,点击进入。
2.2 输入svn地址。
点击页面中的“+”号,然后输入svn地址(就是上面svn建库的时候会产生一个URL地址)。点击OK。
2.3选择导出文件,进行项目的检出
这时候我们就能浏览到svn服务器上文件列表。选择我们要导出的文件,点击Checkout,进行文件的检出(导出)。
2.4报错处理
点击checkout,如果出现 Executable is not specified(未指定可执行项目) 提示;或者出现Connot run program "svn"(……): CreateProcess error=2,…… 的报错,我们点击
点击设置
点击确定即可。
2.5本地检出
选择一个本地的目标目录,点击OK。选择需要更新到本地的版本,点击OK。
选择svn服务器版本,点击OK
然后会弹出账号密码输入框
2.6进行项目检出
输入用户名和密码后,点击确认,进行项目检出。第一次更新可能时间会长一点。耐心等待。完成后会询问你是否打开该项目,点击确定,进入项目。到此为止项目已经更新到本地。
2.7查看VCS目录
接下来是一张汉化的图片,与上图内容一致,基本上英文都有翻译
下面是一些vcs具体的子目录
svn提交的时候可点击显示历史记录,查看发生改变的文件,选择性进行提交(有些文件在提交的时候是不需要提交的,所以可原则性提交)
•对上述svn的使用详解
①.点击create External,创建新的目录
②点击Commit目录,进行项目的提交(效果图)
③点击更新项目,将svn中的目录更新到本地(一些不懂的文章其他地方都有解释)
④.点击合并项目,进行svn中两个项目的合并
⑤.点击edit properties
⑥点击set properties
⑦点击revert进行恢复本地文件(有些文件已经更新,你可以进行恢复)
⑧点击compare whit branch,进行与某个项目的比较
选择进行比较的项目
比较产生的文件差异
⑨.点击显示历史记录(显示的其实就是svn管理器,下面的svn提交的精华就是)
⑩.branch or tag创建新的标签
11.relocate,进行文件的移动
•svn提交的精华(点击下图右下角图标弹出svn管理器,查看历史记录,local changes,观看哪些文件发生了改变)(基本上每个按钮的功能图中都有解释)
2.8上传文件
当你的项目有改动的时候,你需要上传改动的文件点击VCS↑
举例:我们新建一个NewfilesController.class.php 和新建文件夹Newfiles以及在该文件夹下面建index.html,然后上传提交到svn
phpstorm会根据svn当前版本检测到你改动的文件,你需要勾选上传你改动的文件,并且在下面填写你的提交注释内容(用来标记你什么时候提交了什么),然后点击commit进行提交。
2.8更新文件
当第二天你要进行项目的时候,你需要先点击VCS↓进行更新
会弹出更新提示框,点击确定,就会更新到与svn中相同的最新版本。
3.模拟多用户更新,上传文件
3.1模拟多用户登陆
在文件->设置->版本控制器中 删除保存的登录记录
然后点击VCS↓ , 参照上面检出svn版本,此时会弹出一个登录框让你登陆另一个证号密码
然后输入在svn服务器中设置好的其他的用户名密码,进行登录,更新
可以看到新的用户检出的文件名为phpstormchenkout1。
3.2登录新的用户更新项目
登录新的用户更新项目,我们发现上个用户上传的NewfilesController.class.php 和文件夹Newfiles以及在该文件夹下面的index.html全部更新出来了,说明上一个用户提交没有问题,咱们更新也没问题
我们可以发现上一个用户提交的文件以及文件夹均可以更新出来(我们也可以用这个证号进行上传,用另一个证号去更新,发现都能正常更新)。
3.3编写文件提交更新
我们进行文件的编辑以及提交,我们对Newfiles文件进行编写然后提交
3.4展示更新改变
切换登录用户,进行更新,更新完成之后,会提示什么地方发生了改变
3.5合并svn中两个项目
点击,选择合并svn中的两个项目
3.6查看本地历史记录
把现在的版本和历史版本进行对比,就可以发现我们做出了哪些改动(上述代码仅供参考,只是为了改变代码,从而进行提交和比对)
3.7show Changes
把自己文件中的代码与SVN中的代码进行对比,查看我们文件中发生了哪些改变
把文件夹与SVN中的文件夹进行对比,查看我们文件发生了哪些改变
3.8查看版本历史记录
显示版本记录
可对比查看文件差异
对比的差异可能有很多地方,自己的项目自己可以对比一下,然后滚动滚动条,你会发现只要有差异的地方都会显现出来。
4.1两用户修改同一文件问题
如果A和B用户同时写了function2(){},B用户先提交,A用户在提交的时候会提示有冲突(这种情况,二者应该沟通,进行适当修改)
4.2提交图片等非php或html的文件问题
问题解析:当我们项目中增加一个图片文件(非php或者html文件),等我们进行提交,或者查看local changes ,会显示7.jpg文件在未加入版本控制文件中(有时候也不会显示在未加入版本控制的文件中),这个时候我们要提交该文件的时候,需要先右键点击该图片文件,然后加入vcs,之后我们提交的时候,就可以正常提交了。
该文件名由灰色变成绿色,我们就可以进行svn提交了
在phpstorm中svn的使用的更多相关文章
- SVN checkout 出的项目在PHPstorm中打开没有subversion(SVN)选项按钮怎么办?
对于svn add 命令的批量操作,为了操作简便还是习惯在IDE中完成,有时候新checkout出的项目,在PHPstorm中右键菜单中没有 Subversion 按钮,操作如下: 点击VCS按钮,然 ...
- PhpStorm中如何配置SVN,详细操作方法
1.简介: PhpStorm是一个轻量级且便捷的PHP IDE,其提供的智能代码补全,快速导航以及即时错误检查等功能大大提高了编码效率.它是一款商业的 PHP 集成开发工具,以其独特的开发便利性,短时 ...
- PhpStorm中如何配置SVN,详细操作方法 - 郑加全的博客 - CSDN博客
登录|注册 郑加全的博客 目录视图 摘要视图 订阅 CSDN日报0711——<离开校园,入职阿里,开启新的程序人生> 征文 | 你会为 AI 转型么? ...
- phpstorm中配置使用svn详细步骤
一.搭建SVN环境 1.下载VisualSVN Sever.下载地址:https://www.visualsvn.com/server/download/ 2.安装VisualSVN Server. ...
- phpstorm配置svn
phpstorm配置svn 发表于3年前(2013-02-28 10:50) 阅读(8249) | 评论(0) 4人收藏此文章, 我要收藏 赞1 9月19日成都 OSC 源创会正在报名,送机械键盘 ...
- phpstorm使用svn爆出“cannot load supported formats” 的解决
从这 http://subversion.apache.org/packages.html 下载svn客户端二进制包后修改phpstorm配置中 svn的指向到你的svn可执行程序即可解决
- phpStorm配置SVN与FTP数据传输
公司php开发时候,需要搭建环境,自己捋了下思路,公司代码放在SVN服务器上,需要在本机安装TortoiseSVN软件,将代码下载到本机,在本机上调试程序,修改代码,修改的代码再上传到SVN.之后通过 ...
- 如何在Webstorm/Phpstorm中设置连接FTP,并快速进行文件比较,上传下载,同步等操作
Phpstorm除了能直接打开localhost文件之外,还可以连接FTP,除了完成正常的数据传递任务之外,还可以进行本地文件与服务端文件的异同比较,同一文件自动匹配目录上传,下载,这些功能是平常ID ...
- 协同开发中SVN的使用建议
协同开发中SVN的使用建议 1. 注意个人账户密码安全 各员工需牢记各自的账户和密码,不得向他人透漏,严禁使用他人账户进行SVN各项操作(主要考虑每个SVN账号的使用者的权限范围问题).如有忘记,请 ...
随机推荐
- JavaScript之能力与硬件检测[小结]
//检查浏览器种类及其版本号 function checkBrowserVersion(){ var Sys = {}; var ua = navigator.userAgent.toLowerCas ...
- luogu P3522 [POI2011]TEM-Temperature
这道题暴力做法就是枚举每个起点,然后向后拓展到不能拓展 就像这样(红框是每个位置的取值范围,绿线是你取的值构成的折线) 应该可以发现,左端点往右移的过程中,右端点也只能不动或往右移,所以我们可以每次移 ...
- 【反射】利用java反射原理将xml文件中的字段封装成对应的Bean
本例使用的xml解析方式为jdom ... <ROOT> <Consignment> ... </Consignment> </ROOT> 解析xml文 ...
- window.location详解
window.location对象常用属性 location.hostname 返回 web 主机的域名 location.host 返回 web 主机的域名(包含端口) location.pathn ...
- GET和POST有什么区别?及为什么网上多数答案都是错的(转载)
这仅仅是我认为比较好的关于get和post区别的解答,然后把作者的一些文字踢除留下比较干的部分. 作者:南柯之石链接:http://www.cnblogs.com/nankezhishi/archiv ...
- 列式数据库~clickhouse 副本集架构的搭建
clickhouse 搭建副本集 一 原理: 1 依赖ZK,ZK的基础上,ZK存储数据库元数据 2 使用复制表引擎创建复制表,包括ZK路径和副本名,相同ZK路径的表可以相互复制 3 复制表本身拥 ...
- Android判断当前是否在主线程
Android开发中, 有时需要判断当前线程到底是主线程, 还是子线程, 例如: 我们在自定义View时, 想要让View重绘, 需要先判断当前线程到底是不是主线程, 然后根据判断结果来决定到底是调用 ...
- SpringMVC使用Hession发布远程服务
(1)三个项目,Api(存放提供者和消费者共有的xx,例如实体类以及服务接口等等).Service(服务提供者).Provider(服务消费者) Api部分代码 package cn.coreqi.e ...
- python模块分析之typing(三)
前言:很多人在写完代码一段时间后回过头看代码,很可能忘记了自己写的函数需要传什么参数,返回什么类型的结果,就不得不去阅读代码的具体内容,降低了阅读的速度,加上Python本身就是一门弱类型的语言,这种 ...
- Linux的capability深入分析(1)【转】
转自:https://blog.csdn.net/wangpengqi/article/details/9821227 一)概述: )从2.1版开始,Linux内核有了能力(capability)的概 ...