Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以在Subversion中具有用户特定的svn:x属性(例如svn:ignore和svn:externals)?_Svn - Fatal编程技术网

是否可以在Subversion中具有用户特定的svn:x属性(例如svn:ignore和svn:externals)?

是否可以在Subversion中具有用户特定的svn:x属性(例如svn:ignore和svn:externals)?,svn,Svn,我和我的合作者经常发现,我们希望能够为自己的项目工作副本设置不同的svn:ignore和svn:externals属性。与属性相关的svn功能似乎不需要对这些属性进行版本控制,但我们还没有找到一种方法来对这些属性进行版本控制 否,属性特定于设置它们的文件/目录。用户特定的属性不存在 为什么需要不同的svn:外部?处理这个问题的一种方法是在存储库中拥有自己的目录,其中只包含外部内容。这样,您就可以控制自己的外部设置 存储库的约定和布局是您必须同意的。Subversion实际上不允许用户自定义他们对

我和我的合作者经常发现,我们希望能够为自己的项目工作副本设置不同的svn:ignore和svn:externals属性。与属性相关的svn功能似乎不需要对这些属性进行版本控制,但我们还没有找到一种方法来对这些属性进行版本控制

否,属性特定于设置它们的文件/目录。用户特定的属性不存在

为什么需要不同的svn:外部?处理这个问题的一种方法是在存储库中拥有自己的目录,其中只包含外部内容。这样,您就可以控制自己的外部设置


存储库的约定和布局是您必须同意的。Subversion实际上不允许用户自定义他们对存储库的视图。

否,属性特定于他们设置的文件/目录。用户特定的属性不存在

svn co svn://localhost/local-externals
svn pe svn:externals local-externals
...
svn commit local-externals
为什么需要不同的svn:外部?处理这个问题的一种方法是在存储库中拥有自己的目录,其中只包含外部内容。这样,您就可以控制自己的外部设置


存储库的约定和布局是您必须同意的。Subversion实际上不允许用户自定义他们对存储库的视图。

要取消这些属性的版本,请将它们从附加到的文件夹或文件中删除(然后提交)。如果您使用的是命令行,则可以使用“svn propdel”删除它们

svn co svn://localhost/local-externals
svn pe svn:externals local-externals
...
svn commit local-externals
存储在服务器上,它们不是工作副本构造,因此不能为不同的用户设置相同的属性

为了获得同一代码的不同“视图”,您可能希望查看,而是每个人都处理自己的分支,并定期将更改合并到主干中。这听起来像是您试图实现的工作流,每个用户具有不同的属性


要以不同的方式查看svn:ignore,您可以在客户端上设置不同的“”。

要取消这些属性的版本,请将它们从附加到的文件夹或文件中删除(然后提交)。如果您使用的是命令行,则可以使用“svn propdel”删除它们

存储在服务器上,它们不是工作副本构造,因此不能为不同的用户设置相同的属性

为了获得同一代码的不同“视图”,您可能希望查看,而是每个人都处理自己的分支,并定期将更改合并到主干中。这听起来像是您试图实现的工作流,每个用户具有不同的属性

要以不同的方式查看svn:忽略,您可以在客户端上设置不同的“”。

哈哈哈

获取特定于用户(实际上是特定于工作站)的svn:externals的完全不切实际的解决方案:

首先,让每个开发人员在自己的机器上创建一个subversion存储库,并运行一个小的svnserve实例以使其可访问

svn://localhost/local-externals
让每个开发人员在所述存储库的根目录上设置perferred svn:externals属性

svn co svn://localhost/local-externals
svn pe svn:externals local-externals
...
svn commit local-externals
在中央存储库中,包括对的svn:externals引用svn://localhost/local-externals

svn co svn://example.com/repo/project/trunk
svn pe svn:externals
    ... define an reference to svn://localhost/local-externals
svn commit trunk
现在,每个签出主干的开发人员都将从本地externals存储库中获取externals目录,而本地externals存储库又可以将他们希望包含在签出中的主存储库的部分拉入

你可以做到这一点,但我想我会认为我自己很愚蠢,即使考虑到这一点。

< MuHaaHaHaHA! 获取特定于用户(实际上是特定于工作站)的svn:externals的完全不切实际的解决方案:

首先,让每个开发人员在自己的机器上创建一个subversion存储库,并运行一个小的svnserve实例以使其可访问

svn://localhost/local-externals
让每个开发人员在所述存储库的根目录上设置perferred svn:externals属性

svn co svn://localhost/local-externals
svn pe svn:externals local-externals
...
svn commit local-externals
在中央存储库中,包括对的svn:externals引用svn://localhost/local-externals

svn co svn://example.com/repo/project/trunk
svn pe svn:externals
    ... define an reference to svn://localhost/local-externals
svn commit trunk
现在,每个签出主干的开发人员都将从本地externals存储库中获取externals目录,而本地externals存储库又可以将他们希望包含在签出中的主存储库的部分拉入


你可以做到这一点,但我认为我甚至会认为自己是个疯狂的人。如果您想实现您的目标,您会在文件系统中做什么?你们每个人都会在某个地方创建原始文件的副本

您可以对Subversion(
svn copy
)执行相同的操作。在新子目录中设置的属性仅对这些子目录有效,而对原始文件无效

但是有一个代价:您现在必须手动同步(合并)您的更改(就像您在没有subversion的本地文件系统中这样做一样)


我不知道有哪家VCS可以免费提供您想要的东西。

将SVN视为一个文件系统。如果您想实现您的目标,您会在文件系统中做什么?你们每个人都会在某个地方创建原始文件的副本

您可以对Subversion(
svn copy
)执行相同的操作。在新子目录中设置的属性仅对这些子目录有效,而对原始文件无效

但是有一个代价:您现在必须手动同步(合并)您的更改(就像您在没有subversion的本地文件系统中这样做一样)


我不知道有哪家风投可以免费满足您的需求。

谢谢!正如你所说,我可能不会走这么远,但我喜欢创造性思维和邪恶的笑声。谢谢!正如你所说,我可能不会走这么远,但我喜欢创造性思维和邪恶的笑声。谢谢!这是对我问题的一个很好的回答。它看起来真的像我