SVN中的E状态代码是什么意思?

Pop*_*ops 25 subclipse svn

E第一次得到了SVN的状态代码.这是什么意思?update文件说,它的全称是"存在的",但没有给出较详细.

或者,什么是"阻碍路径"?长帮助文件指出"阻塞路径在第一列中报告,代码为'E'."

一些背景:我从工作副本中删除了一个我不应该删除的文件.从SVN更新没有恢复它,所以我创建了一个具有相同文件名的新文件,并将文件的repo副本复制粘贴到其中.

然后我将其添加到版本控制,但是它给它"需要添加到远程存储库的版本化文件"状态,而不是"无本地更改"状态.

使用Subclipse,我在父文件夹中选择了Replace With > Latest from Repository,这发生了:

revert -N C:/foo/Bar.java
    Reverted C:/foo/Bar.java
update C:/foo/Bar.java -r HEAD --force
    E   C:/foo/Bar.java
    Updated to revision 396.
    ===== File Statistics: =====
    Existing: 1
Run Code Online (Sandbox Code Playgroud)

Kev*_*ker 20

"阻碍路径"是指更新命令需要复制版本化文件或文件夹的路径上的现有版本控制文件或文件夹.

E状态仅在使用--force标志时出现,没有更新将失败的标志.使用该标志,它会单独保留文件,并允许您决定如何处理它.

关于这种情况的令人费解的事情是它最终认为文件在成功恢复之后立即失效了.

参考: svn help update

如果阻塞路径与存储库中的相应路径的类型(文件或目录)相同,则它将变为版本,但其内容在工作副本中保持"原样".


Wat*_*ios 5

E =更新前存在的文件.

http://plind.dk/2009/06/26/svn-status-cheatsheet/

"如果更新尝试添加相同的路径,则工作副本中的无版本阻塞路径不会自动导致失败.如果阻塞路径与存储库中的相应路径的类型(文件或目录)相同,则会变为版本但其内容在工作副本中保留"原样".这意味着阻碍目录的无版本儿童也可能阻碍并变为版本.对于文件,障碍物和存储库之间的任何内容差异都被视为对工作副本的本地修改.存储库中的所有属性都应用于阻塞路径.阻塞路径在第一列中报告,代码为"E".

使用--set-depth选项在此操作的目标上设置新的工作副本深度."