我无法从我的标签文件夹中删除错误创建的标签。我尝试将我的工作副本切换到 /tags,然后简单地删除 tags 目录中所需的文件夹。但这会使 svn 文件夹的图标变红,当我尝试提交所做的更改时,它不会让我这样做。
所以简而言之,我怎样才能从 /tags 中删除一个文件夹,这样当其他人签出到该路径时,他们就不会再看到它们了?
我无法从我的标签文件夹中删除错误创建的标签。我尝试将我的工作副本切换到 /tags,然后简单地删除 tags 目录中所需的文件夹。但这会使 svn 文件夹的图标变红,当我尝试提交所做的更改时,它不会让我这样做。
所以简而言之,我怎样才能从 /tags 中删除一个文件夹,这样当其他人签出到该路径时,他们就不会再看到它们了?
根据您的描述,提交后挂钩将需要临时重命名。完成删除后,可以将挂钩重命名为其原始名称。
@BradBruce 的建议肯定会起作用,但是在我看到这个问题之后,我四处寻找更好的方法,并在这个 SO 问题中找到了它:SVN pre-commit hook for Avoid changes to tags subdirectories,特别有用,因为你在 Windows 上。用户 @mcdon 提供了一个钩子脚本,使标签不可变,就像您的管理员似乎所做的那样,但还提供了一个钩子(请原谅那里的过载),让您允许一个指定的用户忽略安全措施——正是您要问的为了!(您将在脚本顶部看到您只需将 Administrator 变量设置为您希望指定的用户。)
您收到的错误消息:
Commit failed, Commit blocked by pre-commit hook(exit code 1),
with output: you don't have enough permissions for this transaction.
关键短语是 _blocked by pre-commit hook。这会阻止您删除标签。为了删除标签,您必须找到管理员,让他们删除标签,或者授予您删除标签的权限。