繁体   English   中英

如何从 svn 工作副本中取消某些文件(或文件夹)的版本?

[英]How to unversion some files (or folders) from a svn working copy?

起初我应该说我不是在寻找关于svn:ignoresvn rm --keep-local的解决方案,我不想取消整个工作副本的版本,现在只有 1 个.svn文件夹用于工作文件夹复制,所以svn export或删除.svn文件夹也不是我想要的答案。

我想要的是取消版本(取消链接,取消跟踪......我不确定使用哪个词)工作副本下已经签出或更新的一些项目。

我也在 TortoiseSVN 中尝试过“取消版本并添加到忽略列表”,但它看起来像是svn:ignoresvn rm --keep-lock的组合命令。 将文件添加到ignore-on-commit更改列表要好得多,但我不能以这种方式添加文件夹。

让我详细说明。

我在存储库中有 2 个文件。

repo-url
  a.txt
  b.txt

查看。

>svn co --depth empty repo-url wd
>cd wd
>svn up a.txt

现在只签出a.txt ,如果我将 b.txt 添加到wd文件夹, b.txt会识别它是未版本化的。

>echo abc>b.txt
>svn st
?     b.txt
>del b.txt
>svn st

如果我不小心更新b.txt ,则此文件由 svn 版本控制。 如果我在本地删除此文件,svn 会将工作副本标记为已修改。

>svn up b.txt
>del b.txt
>svn st
!     b.txt

在更新 b.txt 之前,我找不到一个简单的命令来将我的工作副本恢复到b.txt 目前我的解决方案是删除.svn/wc.db/NODES中的相关行,但我害怕折叠工作副本。

似乎工作。

svn up --set-depth=exclude b.txt

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM