【IntelliJ IDEA学习之八】版本控制之SVN
版本:IntelliJIDEA2018.1.4
一、SVN
1、安装SVN客户端,command line client tools默认是不安装的,这里要勾选上(不用重新卸载安装,只找到安装程序,选择 Modify 增加选择 command line client tools ,即可在安装bin目录下看到 svn.exe)。
2、配置
(1)设置使用SVN作为版本控制工具。
(2)VCS全局配置
可以指定工程或者目录使用不同的VCS控制工具:
(3)配置检测更新
(4)新增和删除文件时操作
(5)版本忽视文件列表
3、面板介绍
(1)VCS工具栏和VCS面板:
(2)工具栏
第1个按钮:Update Project 更新项目。
第2个按钮:Commit changes 提交项目上所有变化文件。点击这个按钮不会立马提交所有文件,而是先弹出一个被修改文件的一个汇总框。
第3个按钮:Compare with the Same Repository Version 当前文件与服务器上该文件相同版本的内容进行比较。如果当前编辑的文件没有修改,则是灰色不可点击。
第4个按钮:Show history 显示当前文件的历史记录。
第5个按钮:Revert 还原当前被修改的文件到未修改的版本状态下。如果当前编辑的文件没有修改,则是灰色不可点击。
一般1,2是不常用的,因为在这个地方提交更新和下载更新,给你的感觉有点不清不楚的感觉。所以,在这一般不使用这2个按钮。
最常用的就是后面的3个,第3个按钮就是在你把当前文件已经修改过了,有和svn库里面的代码做对比,那么就可以直接点击这个按钮,然后就可以直接看文件修改前后的差别啦。
第4个也常用,就是查看当前文件的提交历史,点击之后,当前文件的历史修改记录就都会呈现在眼前啦。
第5个按钮,就是你放弃对当前文件的修改,直接回撤到和最新库里一致的状态。
(3)VCS面板之Local Changes
(4)VCS面板之Repository
(5)VCS面板之Incoming
(6)VCS面板之Subversion Working Copies Infomation
(7)Shelf
4、操作
4.1检出项目
(1)选择Subversion检出项目
两个地方操作:
(2)添加选择SVN地址
(3)选择导出目录
(4)选择导出版本
指定导出版本
(5)设置工作目录SVN版本
(6)工程相关的一系列配置:
使用SVN上代码创建工程使用的是导入模式,所以会弹窗按导入模式创建工程
(7)当检出工程是maven工程的时候,会提示:
点击 “Add as Maven Project”,会加载相关依赖jar。
(8)忽视非版本文件
检出之后project目录:
会生成.idea文件夹和*.iml文件,这俩东西可能被idea配置隐藏了,按照如下操作来显示:
然后在VCS面板来忽视这些不需要版本管理的目录和文件:
4.2 Local Changes操作
(1)修改文件列表分组 Changelist
针对不同的需求目的,将修改的文件分组,便于区分
(2)提交代码
Reformat code 格式化代码,如果是 Web 开发建议不要勾选,因为格式化 JSP 类文件,格式化效果不好。如果都是 Java 类则可以安心格式化。如果只是格式化你写的代码就行,项目是很多人在不同的时间段写的,所以,不要随便格式化别人的代码,那样版本控制就会显得乱七八糟。你写的代码肯定要记的格式化一下。
Rearrange code 重新编排代码,IntelliJ IDEA 支持各种复杂的编排设置选项,这个会在后面说。设置好了编码功能之后,这里就可以尝试勾选这个进行自动编排。
Optimize imports 优化导入包,会在自动去掉没有使用的包。这个建议都勾选,这个只对 Java 类有作用,所以不用担心有副作用。
Perform code analysis 进行代码分析,这个建议不用在提交的时候处理,而是在开发完之后,要专门养成对代码进行分析的习惯。IntelliJ IDEA 集成了代码分析功能。
Check TODO 检查代码中的 TODO。
Cleanup 清除下版本控制系统,去掉一些版本控制系统的错误信息,建议勾选。
优化导入包的、分析代码、check todo 这些都是在开发过程中要做的,不要等着到提交的时候再处理。
(3)加入版本控制
4.3 Incoming操作
更新代码
如果代码和本地代码存在冲突:
点击merge
左边的是local,也就是本地的,你修改的,右边的是server,也就是 服务器上的,中间的就是result,也就是合并结果。再注意,右上角那地方,有个数字,也就是简单的总结下冲突和变更的个数
4.4 其他技巧
(1)代码编辑
(2)其他操作
参考:
IntelliJ IDEA 下的svn配置及使用的非常详细的图文总结
【IntelliJ IDEA学习之八】版本控制之SVN的更多相关文章
- 【IntelliJ IDEA学习之九】版本控制之Git和Github
版本:IntelliJIDEA2018.1.4 [IntelliJ IDEA学习之九]版本控制之Git版本:IntelliJIDEA2018.1.4 一.git知识准备git是目前流行的分布式版本管理 ...
- 版本控制工具SVN学习
教学视频链接:https://edu.aliyun.com/course/83?spm=5176.10731334.0.0.778e6580zC0Ri0 版本控制工具SVN学习 1,SVN的简介 在实 ...
- [.net 面向对象程序设计进阶] (23) 团队开发利器(二)优秀的版本控制工具SVN(上)
[.net 面向对象程序设计进阶] (23) 团队开发利器(二)优秀的版本控制工具SVN(上) 本篇导读: 上篇介绍了常用的代码管理工具VSS,看了一下评论,很多同学深恶痛绝,有的甚至因为公司使用VS ...
- IntelliJ IDEA 下的版本控制介绍
不管是个人开发或是团队开发,版本控制都是可以很好地被使用的,目前我找不到任何开发者不使用版本控制的理由.而且对于 IDE 来讲,集成版本控制的本身就是它最大的亮点之一,很多开发者也是为此而使用它. 在 ...
- intellij idea 学习
intellij idea是一个java的ide.由jetbrain开发. intellij idea快捷键 快捷键 说明 备注 Ctrl+N 快速导航到类 类似于Resharper中的C ...
- 十二、IntelliJ IDEA 中的版本控制介绍(中)
由于 IntelliJ IDEA 支持的版本控制工具非常的多,但咱们真正能够用到的也就两三个而已,因此在本篇博文中,咱们主要介绍 SVN.Git 和 GitHub 的配置方法. SVN 如果想要在 I ...
- 十一、IntelliJ IDEA 中的版本控制介绍(上)
咱们已经了解了很多关于 IntelliJ IDEA 的使用方法,至少可以独立的运用 IntelliJ IDEA 进行项目开发啦!但是一个人进行项目开发更趋向于理想化,更多的则是团队协同开发.这时,咱们 ...
- 团队项目开发中,常见的版本控制有svn,git
团队项目开发中,常见的版本控制有svn,git
- 版本控制、SVN、VSS
ylbtech-Miscellaneos: 版本控制.SVN.VSS 1.A,版本控制返回顶部 1, 版本控制(Revision control)是一种软体工程技巧,籍以在开发的过程中,确保由不同人所 ...
随机推荐
- .Net Core中文编码问题
原文:https://www.cnblogs.com/ideacore/p/6964771.html 问题 .net core环境下,使用HttpClient执行GetStringAsync的时候,报 ...
- c#WinForm中TeeChart控件的注册和使用
首先要注册好TeeChart控件,注册方法参考:https://blog.csdn.net/my_clear_mind/article/details/79741020 完成注册之后,新建一个WinF ...
- MySQL难点语法——子查询
本篇主要通过练习来讲解子查询的知识,进入正题之前,先熟悉数据表,表格的数据可以先不用管,主要是熟悉表格的字段名 这里子查询分为三个部分: 1.where条件子查询 这个子查询和普通的查询没什么区别,主 ...
- ES6迭代器
说起迭代器, 那就要先了解迭代模式 迭代模式: 提供一种方法可以顺序获得聚合对象中的各个元素, 是一种最简单, 也是最常见的设计模式,它可以让用户通过特定的接口寻访集合中的每一个元素 而不用了解底层的 ...
- Linux Shell脚本编程while语句
Linux Shell脚本编程while语句案例 1,每隔3秒,打印一次系统负载 #!/bin/bash while truedo uptime sleep 3done 2,把监控结果保存 ...
- 『计算机视觉』imgaug图像增强库中部分API简介
https://github.com/aleju/imgaug 介绍一下官方demo中用到的几个变换,工程README.md已经给出了API简介,个人觉得不好理解,特此单独记录一下: import n ...
- lua使用ffi调用c程序的函数
参考: https://blog.csdn.net/weiwangchao_/article/details/16880401 http://luajit.org/ext_c_api.html h ...
- Idea实用功能手记
一. 自动优化导包(自动删除.导入包) 下面是Auto Import设置步骤详解. Settings→Editor→General→Auto Import 然后勾选Add unambiguous im ...
- Codeforces Good Bye 2016 E. New Year and Old Subsequence
传送门 题意: 给出一个长度为\(n\)的串,现在有\(q\)个询问,每个询问是一个区间\([l,r]\),要回答在区间\([l,r]\)中,最少需要删多少个数,满足区间中包含\(2017\)的子序列 ...
- flask实战-个人博客-编写博客前台
编写博客前台 博客前台需要开放给所有用户,这里包括显示文章列表.博客信息.文章内容和评论等功能功能. 分页显示文章列表 为了在主页显示文章列表,我们要先在渲染主页模板的index视图的数据库中获取所有 ...