PyCharm+SVN配置使用教程
一、说明
去年写“PyCharm+Miniconda3安装配置教程”的时候就想把配置SVN的内容加上,但刚开始使用不是很清楚操作就先算了,然后到后边知道怎么操作之后觉得比较简单不写也可以。
一是昨天使用SVN把本机一个项目下载到一台服务器上去的时候搞了半天,还搞得差点把项目给删了。二是对于学校有基础的知识掌握就比较牢反之就比较容易忘;版本控制相对来说就是一个比较“野生”的知识,之前在Z公司就之接把VSS的服务器让我管,开始的时候就添加账号什么的没什么操作性自己也不怎么使用,后来就很卡说要迁移就研究了其实现写了“VSS+SourceAnywhere for VSS搭建版本控制系统教程”,那时才知道“版本控制”这东西。基于这两个原因还是要记一下。
这里基于PyCharm、VisualSVN、TortoiseSVN都安装完成进行讲解;关于VisualSVN、TortoiseSVN的安装配置可以参考“VisualSVN+TortoiseSVN搭建版本控制系统教程”这里就不多说了。
二、原始的仓库创建和使用
2.1 VisualSVN创建仓库
打开VisualSVN,在“Repositories”上右键,点击"Create New Repository",然后按提示选填一下即可。我这里创建了一个叫“PycharmProjects”的仓库,允许读写的用户名密码为“ls/abcd1234”。

2.2 向仓库导入文件
注意,我们这里直接向仓库导入的文件(夹)并不会自动被svn监视,如果想要和Checkout一样被监视,那么需要在导入前先如2.3一样Checkout一把再导入(主要是把.svn给下载下来);但严谨而言如果是这样的话那就不是Import导入了,而是通过Commit导入,Commit操作见下边2.4。
获取仓库URL,选中仓库,右键,Copy URL to Clipboard。

进入到要导入仓库的目录下,右键,展开TortoiseSVN,选择Import。

在“URL of repository”中填入我们在VisualSVN中创建的仓库的URL,然后点击OK即可。

2.3 从仓库下载代码
在要下载代码的目录,右键,点击SVN Checkout

填好要导出的仓库,要导出到的目录,然后点击OK即可。这里要注意我们向仓库导入的是“PycharmProjects”目录下的文件,是不包括“PycharmProjects”本身的,所以导出时如果仍想导到“PycharmProjects”文件夹,那一定要导出来“PycharmProjects”文件夹。

2.4 提交修改
修改文件之后在文件夹下右键,选择SVN Commit即可;但服务端文件可能已被别人先通过SVN Commit修改了,所以建议先使用SVN Update同步服务端文件,如果有冲突先处理冲突,再SVN Commit。

三、基于PyCharm的仓库创建和使用
首先要明确,PyCharm使用VisualSVN,他也能且只能遵守VisualSVN的操作,所以PyCharm的仓库创建和使用和没使用PyCharm时的仓库的创建和使用,形式上可以稍加变通但本质上必是一样的。
典型的场景是:我们写了一个项目,然后想导入到一个仓库中去,供其他同事下载和修改。我们这里来实现这一需求,假设项目叫test3。
首先,第一步仍是像2.1一样在VisualSVN中仓建一个空的仓库。我这里创建的仓库叫test3。
然后,第二步我们在2.2中说过,如果是使用Import那我们本地的后续修改是不被SVN监控的也不能通过Commit同步到仓库中去,所以我们需要先把test3仓库Checkout到当前项目下



此时关闭项目再重新打开,就可以看到项目文件被着色(当前红色表示文件未被加入仓库),同时工具栏上多了个版本控制的图标,可点击该图标使用Commit将要加入仓库的文件加入仓库。

.idea存放的是PyCharm的配置,每个人的配置是不一样的,所以一般不提交到仓库。

后续,其他人想下载代码,直接Checkout或在PyCharm中Checkout即可,就不多说了。
PyCharm+SVN配置使用教程的更多相关文章
- PyCharm Django Python 开发环境配置 详细教程
PyCharm Django Python 开发环境配置 详细教程 1. Python 下载及安装 (1)根据需要的版本去 Python 官网(https://www.python.org/downl ...
- svn1.8 server client eclipse 插件 配置 完全教程
svn毋庸置疑,广受欢迎的版本管理软件,我们这里以1.8.10版本为例 本文分三部分 第一部分,服务器端svn安装与配置 第二部分,eclipse下svn插件安装与配置 第三部分,客户端svn简单介绍 ...
- PyCharm+QTDesigner+PyUIC使用教程
我们在PyCharm安装配置Qt Designer+PyUIC教程中已配置好了PyCharm+QTDesigner+PyUIC环境 这里在此基上我们演示如何使用这些工具,编写一个图形界面程序: 程序主 ...
- Linux搭建SVN服务器详细教程
前言 本文讲解Linux系统下如何搭建SVN服务器,详细说明各配置项的功能,最终实现可管控多个项目的复杂配置. SVN是subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统 ...
- win7下IIS的安装和配置 图文教程
转自 http://www.jb51.net/article/29787.htm 最近工作需要IIS,自己的电脑又是Windows7系统,找了下安装的方法,已经安装成功.在博客里记录一下,给需要的 ...
- centos apache svn配置
单独安装svn服务: 安装svn软件 yum install subversion 创建根目录 mkdir -p /var/www/svn 创建版本库repos svnadmin create /va ...
- Eclipse插件SVN配置
Eclipse插件SVN配置 方法一 打开Eclipse点击[Help]-[Install New Software] 点击右边[Add]-在弹出窗口中输入 Name:svn Location:htt ...
- webpack安装配置使用教程详解
webpack安装配置使用教程详解 www.111cn.net 更新:2015-09-01 编辑:swteen 来源:转载 本文章来为各位详细的介绍一下关于webpack安装配置使用教程吧,这篇文章对 ...
- CentOS 7.0系统安装配置图解教程
转自:http://www.osyunwei.com/archives/7829.html 操作系统:CentOS 7.0 64位 IP地址:192.168.21.128 网关:192.168.21. ...
随机推荐
- Java集合大全
上图为整理的集合类图关系,带对号标志的为线程安全类. 区别说明: 1.List Set Map Queue的区别List: 有序,可以多个元素引用相同的对象Set: 无序,不重复,不可以多个元素引用相 ...
- vue+element 获取验证码
我们在做一个项目,登录注册页面是少不了的,为了人机校验,验证码也是必须的 我的这个项目获取验证码,前端发送一个随机四位数给后端,后端返回一张图片,前端渲染就可以 template代码: <el- ...
- 面向对象(三)--多态、封装、property装饰器
一.多态与多态性 1.什么是多态 多态指的是同一种类/事物的不同形态 class Animal: def speak(self): pass class People(Animal): def spe ...
- Linux shell awk数组使用
awk中使用数组 一.数组格式 数组是一个包含一系列元素的表. 格式如下: abc[1]="xiaohong" abc[2]="xiaolan" ...
- yum无法下载,网关问题
由于网关地址改变没有及时更新配置,造成无法下载 failure: repodata/repomd.xml from base: [Errno 256] No more mirrors to try h ...
- Go内置常用包
strings 字符串函数 Contains(s, substr string) bool 字符串s是否包含字符串substr,包含返回true Split(s, sep string) []stri ...
- CefSharp 屏蔽右键菜单
既然是C#+web混用模式,当然就需要把web的右键操作屏蔽掉咯.废话不说了直接上代码. internal class MenuHandler : IMenuHandler { public bool ...
- 201871010134-周英杰《面向对象程序设计(Java)》第四周学习总结
201871010134-周英杰<面向对象程序设计(Java)>第四周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这 ...
- Java 中的各种锁
table th:first-of-type { width: 100px; } 锁的类型 锁的实现 乐观锁 在数据库中可以使用version版本号去实现:在Java中是使用CAS(Compare A ...
- PHP随机获取预设的值
前面我们讲了php怎么获取随机数,<?php echo rand(1000,2000); ?> 一行代码就能搞定,如果要获取ASP,PHP,JAVASCRIPT,AJAX,CSS,JQUE ...