gpt4 book ai didi

svn:ignore 是本地计算机吗?

转载 作者:行者123 更新时间:2023-12-03 08:30:26 25 4
gpt4 key购买 nike

当我使用 svn:ignore 从 SVN 中排除文件时然后另一个人尝试提交排除的文件, svn 阻止他?或者他必须在他的电脑上执行相同的命令?

最佳答案

想象一下,如果您有一堆 Java 文件( *.java )。这些被编译成 *.class文件。已编译 *.class文件不应存储在 Subversion 中。

现在,想象一个开发人员创建了一堆新的 *.java文件,编译它们,对结果很满意,然后这样做:

$ svn add *

在这种情况下,Subversion 会愉快地添加所有已编译的 *.class文件。不是你想要的...
svn:ignore属性位于要忽略文件的目录中。当且仅当文件不在 Subversion 中时,如果文件与 svn:ignore 匹配,该文件将不会显示。文件上的 glob 模式,用户执行 svn statussvn add与外卡。

svn status命令,这些文件不会显示 ?标记在输出行的开头。如果用户尝试使用通配符添加,Subversion 将忽略这些文件。

在上述场景中,如果开发人员这样做:
$ svn add *
svn:ignore属性将阻止 *.class文件被添加。

但是,如果用户专门添加了一个被忽略的文件:

$ svn 添加 foo.class

然后,Subversion 不会忽略该文件。而且,一旦将其添加到存储库中,如果文件被更改或删除,Subversion 将报告它。
svn:ignore属性对所有 checkout 该目录版本的用户可见。这是防止意外添加文件的好方法,但它不能阻止某人实际添加它们。

我有一个 pre-commit hook这可以让事情更进一步。有了它,您可以防止用户将特定文件添加到存储库中。您还可以强制用户设置 svn:ignore当他们创建一个新目录时。

关于svn:ignore 是本地计算机吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9489022/

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