如何在SVN中阻止文件?

时间:2010-08-22 03:16:11

标签: svn

当我在本地运行我的站点时,我的连接类指向数据库的本地IP,而不是。

当我提交时,如何防止在实际站点上覆盖我的连接类?

每次我提交时,它都会使我的实时网站指向我的本地版本。我怎么能避免这个?

3 个答案:

答案 0 :(得分:1)

我这样做的方法是制作.production和.debug版本的文件并检查它们。将原始文件添加到svn忽略列表中,并将相关的.production或.debug文件复制到每个系统上的原始文件。

答案 1 :(得分:1)

在CVS中,您可以同时提交配置文件和.cvsignore(其中包含该文件的忽略条目)。这允许其他人检查目录,并帮助防止稍后检查该特定文件(感谢.cvsignore)。

不幸的是,似乎你无法模仿使用svn:ignore props的这种行为。 根据svnbook 1.5手册:

“Subversion对可忽略文件模式的支持仅扩展到将未版本控制的文件和目录添加到版本控制的一次性过程。一旦对象受Subversion的控制,忽略模式机制就不再适用于它。换句话说,不要指望Subversion避免提交您对版本化文件所做的更改,因为该文件的名称与忽略模式匹配 - Subversion始终注意到其所有版本化对象。“

您可以使用以下某些机制: 1)将文件放在repo中,然后编写一个提交钩子,它将检查提交模式并在某些条件为真时停止它(不会直接解决你的问题,但至少会阻止意外提交) 2)如前所述,使用 .user / .local / etc名称模式,然后使用global-ignores或svn:ignore来阻止某人检查它。

Is there any way to block files being committed to SVN repository

的更多信息

答案 2 :(得分:0)

在这种情况下,最好甚至没有subversion文件,并将配置文件留在生产和本地。您可以将subversion设置为忽略某些文件,这样它就不会尝试将提交更改添加到存储库中。

这是另一个更多关于svn:ignore

的话题

How do I ignore a directory with SVN?