如何让本地的修改不提交【选择性的提交本地修改】svn

背景:

       1.在svn上的代码希望一个不懂编程的人取得后就能部署成功(有点夸张,不太可能,但是我们是希望这种傻瓜式的操作。),尽可能的保证svn上的code能够满足发布时的需要

       2.local develop 一些config是不同的与svn上,甚至有可能一些功能在我们本地是无法实现的。所以我们要修改本地的config之类的file。修改完毕后,再完成我们业务的代码,当我们提交的时候,问题出现了。因为我们synchronization时,所有修改的file都显示出来。需要一个排除那一些是不需要提交的file。这个过程是相当的繁琐,而且是相当的危险,一不小心就可能造成不应该提交的代码提交上去,或者有可能造成少提交file的情况。

 

 

困难: 重复操作,危险度高

 

 

解决思路:

 

本想svn会提供这样的支持,可以对某一个文件进行忽略的设置,让我们提交的时候根本不去关注这个file修改了没有修改。不幸的是,svn还没有如此的强大,有待更高的人去开发。google baidu我找了很多,有些人随便回答了一通,根本不是能解决问题的办法。还有甚者根本不知道提问者再问什么,可以说那些回答者根本没有考虑过这样的问题,就随便的回答别人。然还是有一些人遇到这样的问题,拿出了解决的办法,虽然不是很好,但是目前可以够用。根据搜集以及自己的看法,几种解决办法如下,不过都不是很好的解决办法,如果是有就拿出来,如果没有就等svn team来思考吧。

 

 

方法1:config的一些文件一定存放在一个集中的folder下。在svn上建立2个folder,比如config 与 configbak,svn发布服务的时候使用的是config这个目录下的文件,一个固定的配置在project成立的时候已经写入config文件夹。而且设置configbak folder使用svn:ignore *.*的设置。当我们developer 从svn down code时,把config中的file copy到configbak中,然后让我们的项目使用configbak中的配置就ok了,configbak中的配置我们可以随便修改,当提交的时候不会显示需要提交。

 

唯一缺点:把使用config 中的配置 改成需要使用configbak中的配置,仍然需要一个地方实现,如果这个实现可以不再svn 上的file完成,那么就完美了。(可以用我们的代码去解决,代码先检查configbak有没有配置,如果没有再去config中找配置)

 

 

方法2:把config 与 其他非config的配置当作两个工程来处理,提交的时候就不会有冲突了。但是我们eclipe或者别的开发工具必须满足可以项目依赖。而且必须同时update两个project

 

缺点:发布的时候要考虑到项目的依赖,对开发工具以及容器都是一个考验。

 

 

方法3:通过svn的权限来实现,对于一些config的文件,我想不是每一个developer都能够update的。对这些config file,把developer配置成readonly权限。当提交的时候,会出现forbidden。

 

缺点:报错,需要重新提交

 

---------------------------------------------------------------------

(希望以后能找到更好的办法,饿了,要吃饭了。)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hassen2010

你的鼓励我能输出跟多的好文章

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值