如何开始使用 svn:externals?

发布于 2024-07-15 03:48:05 字数 325 浏览 11 评论 0原文

我正在寻找有关使用 svn:externals 的简洁且写得好的教程。

我自己已经知道如何以基本方式使用它们,但我想要一篇好文章,在回答最近出现的此类问题时可以链接到:

如何处理依赖于同一源的多个项目?

我会自己做,但我使用它们的频率并不高,以至于我不想花时间写一篇关于它的教程。 令人惊讶的是,谷歌对这个话题没有提供任何帮助。

I'm looking for a succinct and well-written tutorial on using svn:externals.

I already know how to use them in a basic way myself, but I want a good article that I can link to when answering questions like this one that come up recently:

What to do with multiple projects depending on the same source?

I'd do it myself, but I don't use them often enough to want to stick my neck out and write a tutorial on it. Google was surprisingly unhelpful with this topic.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

生生漫 2024-07-22 03:48:06

以下是 svnbook / TortoiseSVN 手册中有关它的一些部分:

This< /a> 是 svn:externals 上的 svnbook 页面。 这是该主题最有用的资源。

这个解释将子项目包含在工作流程中的四种方法(在此过程中遗漏了第五种方法:符号链接)。

最后一个是关于如何导入存储库中的内容的特定于 TortoiseSVN 的页面(与 svn:externals 不直接相关)。

Here are some sections about it in the svnbook / TortoiseSVN manual:

This is the svnbook page on svn:externals. It is the most useful resource on the subject.

This one explains four ways to include sub-projects in the workflow (and in the process misses a fifth one: symlinks).

And this last one is a TortoiseSVN-specific page on how to import stuff in a repository (not directly related to svn:externals).

夏末的微笑 2024-07-22 03:48:06

如果上面提供的链接不清楚,您设置与特定修订版(固定)相关的 svn:externals 属性的方式如下:

svn propset svn:externals "plugins -r12345 https://svn.example.com/common/plugins" extras

这将创建一个 < extras 目录下的 code>plugins 子目录,并将其链接到外部 SVN URL https://svn.example.com/ 的修订版本 12345通用/插件

有一篇红豆文章建议使用 propedit 因为 svn:externals 可以是多行值。 上面的示例将进行如下更改以使用 propedit

svn propedit svn:externals extras

然后,您可以按照上面所示的值格式为每个外部链接添加一行。

In case it isn't clear from the links provided above, the way you set the svn:externals property that is tied to a particular revision (pinning), here it is:

svn propset svn:externals "plugins -r12345 https://svn.example.com/common/plugins" extras

That will will make a plugins subdirectory under the extras directory and link it to revision 12345 of the external SVN URL https://svn.example.com/common/plugins.

There is a Red Bean article that suggests using propedit since the svn:externals can be a multi-line value. The above example would be changed as follows to use propedit.

svn propedit svn:externals extras

You would then add one line for each external link following the same format shown above for the value.

℉服软 2024-07-22 03:48:06
root/repo1/proj/base/common/log.c
root/repo1/proj/base/common/log.h
root/repo1/proj/base/client

root/repo2/proj/test/base

如上所示,我们要将2个文件和1个目录复制到repo2

步骤1

目录:/home/jack/repo2/proj/

cd /home/jack

步骤2

svn propset svn:externals "../repo1/proj/base/client proj/base/client" repo2

类似:ln repo1/proj/base/client repo2/proj/base/client

第三步

export SVN_EDITOR=vim

第四步

svn propedit svn:externals repo2

vim 显示:

../repo1/proj/base/client proj/base/client

第五步:添加另外两个文件

../repo1/proj/base/client proj/base/client
../repo1/proj/base/common/log.c proj/base/common/log.c
../repo1/proj/base/common/log.h proj/base/common/log.h
root/repo1/proj/base/common/log.c
root/repo1/proj/base/common/log.h
root/repo1/proj/base/client

root/repo2/proj/test/base

As show above, we want to copy 2 files and 1 directory to repo2

Step1

directory: /home/jack/repo2/proj/

cd /home/jack

Step2

svn propset svn:externals "../repo1/proj/base/client proj/base/client" repo2

something like: ln repo1/proj/base/client repo2/proj/base/client

Step3

export SVN_EDITOR=vim

Step4

svn propedit svn:externals repo2

vim shows :

../repo1/proj/base/client proj/base/client

Step5: add another two files

../repo1/proj/base/client proj/base/client
../repo1/proj/base/common/log.c proj/base/common/log.c
../repo1/proj/base/common/log.h proj/base/common/log.h
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文