gpt4 book ai didi

svn - 如何忽略来自 TortoiseSVN 的文件而不删除它们?

转载 作者:行者123 更新时间:2023-12-04 20:57:28 26 4
gpt4 key购买 nike

假设有人不小心 checkin 了配置文件,或者如果我的存储库中有构建文件夹,我如何从 SVN 中删除/忽略它们而不删除所有用户下次更新时的文件?

假设我更新根文件夹的属性以忽略文件 config.xml。如果我下次尝试提交我的更改,它会提交根文件夹的新属性,但也会将 config.xml 标记为已删除。这似乎不正确,因为现在每个人的 config.xml 都将在下一次 svn 更新时被删除,尽管我只想从 SVN 中删除并忽略该文件。我已经尝试通过仅提交文件夹属性更改而不是“删除操作”来为所有人执行删除操作,但现在我遇到了奇怪的树冲突,总而言之,看起来必须有一种更简洁的方法来执行此操作。

最佳答案

您不能忽略 Subversion 存储库中的文件。您只能忽略不存在的文件或目录。

如果我没理解错的话,存储库中目前有一个名为 config.xml 的文件。如果您从存储库中删除它,当其他用户执行 svn update 时,它将被删除。悲伤,但真实。

但是,如果发生这种情况,则意味着用户的本地副本与旧版本完全相同。没问题,他们只需要运行 svn cat config.xml 文件到那个版本,他们就会把它取回来。

如果他们修改了 config.xml 文件怎么办?他们将在更新时收到以下错误:

Tree conflict on 'config.xml'
> local file edit, incoming file delete upon update
Select: (r) mark resolved, (p) postpone, (q) quit resolution, (h) help:

他们应该推迟决议。然后:

$ svn delete --keep-local config.xml

这将保留其本地版本的 config.xml 并解决冲突。

如果他们将冲突标记为已解决,Subversion 将标记 config.xml 以添加到存储库。

为防止这种情况,您可以使用我的 pre-commit hook如果有人试图添加此特定文件,您可以将其配置为导致提交失败。

关于svn - 如何忽略来自 TortoiseSVN 的文件而不删除它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24915202/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com