我正在使用Subversion 1.8.6运行Eclipse 3.7.2.我有一个我不再需要的包,所以我在Package Explorer中删除了包并提交了/src文件夹但是有一个错误,包中的一个文件已经过时了.我还原,确保所有文件都是最新的,然后删除包中的所有文件,但不删除包本身,这很有用.
现在,当我尝试删除Package Explorer中的空包时,使用服务器完全更新的包,并提交/src文件夹我收到错误:
org.apache.subversion.javahl.ClientException:svn:E155011:提交失败(详情如下):svn:E155011:目录'C:...\workspace ...\src\ecc'已过期
那我怎么能删除这个空包呢?
我已阅读如何在SVN控制下正确删除Java包但是我们的问题似乎略有不同.
好吧,我试图忽略目录的内容而不是目录本身,但我在做这件事时遇到了麻烦.
当我右键单击并转到目录本身时,TortoiseSVN -> Properties我有条目svn:ignore '*.*'- 从我所读到的是正确的方法.
但是,当我将文件添加到此目录时,它们不会被忽略; 当我去Add所有文件显示添加然后提交.
我究竟做错了什么!?
这是这个问题的延续:TortoiseSVN合并分支到主干 如果原始问题应该只是编辑,请告诉我,我会这样做.
这是目前的情况.
在我的电脑上有一个工作副本的项目是最新的.我基于此创建了一个新分支,并将我的工作副本切换到这个新分支.
由于这样做,另一个开发人员检查了对trunk的一些更改,并且我对分支进行了一些更改.我认为我们没有改变相同的文件,因此我们应该在任何冲突中保持良好状态.
我想将我的更改合并到主干中.
我选择合并,然后选择合并一系列修订.从i合并的URL已选择中继.范围是空白的.当我进行测试合并时,它似乎是添加了项目中添加的每个文件 - 它肯定会添加更多文件然后自从我从主干分离后发生了变化.当应该只更改10或20个文件时,它会执行数百个文件.
我应该选择其他开发人员签入后备箱的修订范围吗?或者我应该选择'合并两个不同的树'?如果我尝试并尝试从trunk到我的分支进行测试合并,我会发生冲突.如果我尝试从我的分支到主干,看起来它的工作原理.虽然我当时想要将所有东西都推回到主干,因为我已经在我的分支中做了一些修复,我希望在继续进行分支中的任何更改之前将其包含在主干中.
编辑:更多细节,以帮助清晰的当前设置
我的工作副本以前是后备箱的一部分.我使用tortoise来创建一个新的分支并将我的工作副本切换到该分支.所以项目看起来像:/ project/branches/mybranch
trunk看起来像/ project/trunk
另一个开发人员检查了一些变化到trunk,我已经检查了mybranch的一些变化.我想在mybranch上做更多的工作之前将所有这些更改合并回主干.当我查看mybranch的日志时,只有3个签到; 153,154和159(和153只是分支的创建)当我查看主干的日志时,因为它是从主干分割出来的,所以有4个:155-158
应该没有冲突,因为我们没有在同一个文件上工作.
如果我尝试合并FROM mybranch并且没有指定修订范围,它似乎是在添加项目中的每个文件.即我做一个测试合并,它显示添加了数百个文件.
如果我执行测试合并FROM trunk并指定修订版155-158,它看起来会将所有更改从trunk合并到我的工作副本中.我想如果我这样做,我可以检查所有内容到mybranch,我只需要弄清楚如何将所有内容合并回主干.
所有这些都是使用"合并一系列修订"完成的.
如果我尝试'合并两个不同的树'并尝试合并FROM trunk到mybranch(带头修订版),我会发生冲突.
如果我尝试从mybranch合并到trunk,它看起来像是有效的.
从我所看到的,看起来像从mybranch到trunk的树合并是我想要做的.我不确定,因为到目前为止我被告知要做其他事情.
我希望一切都被推入主干.我计划对mybranch中的代码进行大量更改,这将打破项目直到完成,这就是为什么我希望trunk在我开始之前是最新的,以防我需要修复任何现有代码.
edit2:当我做一个合并范围的修订并选择mybranch作为要合并的url时,这就是在乌龟窗口中显示的命令:命令:将/ branches/mybranch的修订版1-HEAD合并到C:\ Users中\ xxxx\Documents\Visual Studio 2010\Projects\MyProject,尊重祖先,仅限测试
我的工作副本已经在mybranch上了.所以对我而言,这听起来像是将mybranch合并到我的工作副本中,这已经是mybranch的一部分,所以基本上它将mybranch合并到自身中?
合并来自主干是唯一对我有意义的事情.如果合并FROM trunk并选择另一个dev检入的修订范围,则输出似乎正确.那时我只需要将它全部合并回主干.
命令:将/ trunk的修订版154-158合并到C:\ Users\XXX\Documents\Visual Studio 2010\Projects\myproject中,尊重祖先,仅测试
重要的修订号是:
trunk:155-158 - 这些是其他dev检查到trunk的修订版
mybranch:153,154和159. 153是分支的创建.154和159是需要合并到主干中的实际文件更改.
我刚试过的另一个命令似乎也可以做我想要的,如果我从mybranch合并到trunk并指定FROM下的版本154或159和TO(trunk)下的版本152.我从来没有尝试过使用当前版本以外的任何其他内容,所以我不确定如果我合并修订后的几个数字会发生什么.
命令:从/ branches/mybranch,版本154到/ trunk,修订版152合并到C:\ Users\xxxx\Documents\Visual Studio 2010\Projects\myproject,尊重
感谢任何帮助澄清正确的方法来做到这一点.
谢谢
我通过SSH(一个操作系统系统)以root用户身份成功登录,现在我正在安装svn并得到以下输出
[root@SERVERIP ~]# yum install mod_dav_svn subversion
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package mod_dav_svn.x86_64 0:1.6.11-9.el6_4 will be installed
--> Processing Dependency: httpd-mmn = 20051115 for package: mod_dav_svn-1.6.11-9.el6_4.x86_64
--> Processing Dependency: libaprutil-1.so.0()(64bit) for package: mod_dav_svn-1.6.11-9.el6_4.x86_64
--> Processing Dependency: libapr-1.so.0()(64bit) for package: mod_dav_svn-1.6.11-9.el6_4.x86_64
---> Package subversion.x86_64 0:1.6.11-9.el6_4 will be installed
--> Processing Dependency: libneon.so.27()(64bit) for package: subversion-1.6.11-9.el6_4.x86_64
--> Running transaction check
---> Package apr.x86_64 0:1.3.9-5.el6_2 will …Run Code Online (Sandbox Code Playgroud) 我正在使用RStudio和SVN存储库来控制我的R项目和文件.通常我会在这些脚本的开头从数据库中获取数据.我正在使用这样的RODBC:
channel <- odbcConnect(mydbconn, uid = "", pwd = "")
Run Code Online (Sandbox Code Playgroud)
现在,我不想在这些脚本中存储连接详细信息,用户ID和密码,因为如果这些是硬编码的,那么每个可以访问SVN repo的人都能看到我的密码等.
在这种情况下,最好的方法是什么?运行此脚本时如何提示这些详细信息(连接,用户ID和密码)(例如从RStudio或命令行)?
我的项目有标准的主干/标签/分支结构,通常在主干中工作.在假期之前,我切换到分支机构做了一个孤立的改变,如果我换回主干,现在我已经失去了召回.有没有办法检查我的本地工作副本是否与分支或主干相对应?
我想开始为即将发布的版本做出更多更改,当我在一天结束时提交时,我不想提交分支,我也不准备合并分支.
现在我有一个批处理文件,其中包含使用svn更新项目的命令并调用maven'clean install'.如何在Jenkins中创建一些类似行为的工作?我应该把它写入ant文件(对不起,如果它是愚蠢的想法,我刚刚听说过它,但我不知道它到底是什么,我该怎么办)或者还有其他方法?
谢谢
在svn中,有时我会删除一个本地文件,然后使用'svn update'来获得一个干净的副本.我怎么能在git中做到这一点?git pull/fetch不起作用.我想出的唯一方法是使用差异性的差异.谢谢.我正在使用tortoiseGit.
我用乌龟svn.但总的来说,我对svn还是比较新的.我有一些git的经验.
在文件中说
重新整合分支
这个方法涵盖了Subversion书中讨论的功能分支的情况.所有主干更改都已逐周移植到功能分支,现在功能已完成,您希望将其合并回主干.
据我所知:功能分支的正常工作流程是,要创建一个功能分支,在其上进行开发,经常在主干分支上的错误修正的修订范围内合并.功能完成后,最后合并主干更改,然后将分支重新集成到主干中.
所以我有一些问题: