从Subversion找一个文件?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (10)
  • 关注 (0)
  • 查看 (94)

在Subversion中保存了所有的图像。我只想要其中的某一张,怎么查找他。

提问于
用户回答回答于

你可以svn export文件而不是检查它。

但这可能不是你想要的。如果你需要这个文件可以选择下载,而不必下载您不需要的文件。

如果您有Subversion 1.5+,那么执行:

svn checkout <url_of_big_dir> <target> --depth empty
cd <target>
svn up <file_you_want>

对于较早版本的SVN,您可能从以下方面获益:

  • 在以前,当它还没有装满的时候,你可以用它来检查你的目录。
  • 更新您想要的文件,创建一个混合版本。即使你的版本中不存在该文件,也可以这样做。
  • 利润!

另一种方法(例如,如果目录中有太多的垃圾信息,而它是创建的),则是将您想要的文件的URL->URL复制到存储库中的新位置(实际上,这是文件的一个工作分支)。检查该目录并进行修改。

我不确定它会不会把修改后的文件创建一个副本,如果没有,建议手动创建副本。

用户回答回答于

我只需浏览它并导出单个文件。如果您有HTTP访问权限,可以使用web浏览器查找文件并获取它。

应该还有一个 svn import 功能,你可以查找一下…

用户回答回答于

我读了SVN的帮助文件,如果你只有一张图片,除非你在做Photoshop,否则你可能不想再次标记它,所以结果是一个比标记更好的命令。

而--depth ARG应该是非空的。

 svn co --depth files <source> <local dest>

svn export --depth files <source> <local dest>
用户回答回答于

回到仓库的浏览器,右键单击文件并使用“另存为”,不过我使用的是TortoiseSVN。

用户回答回答于

你可以参考下面两个步骤

  1. 用原始信息标记处一个空的svn仓库

$ cd /tmp $ svn co --depth empty

2. 运行 svn up 更新特殊的文件

$ svn up

http://svn.your.company.ca/training/trunk/sql/showSID.sql

用户回答回答于

你可以将文件包含在另一个标记的文件夹中。

因为SVN 1.6可以使文件外部性,一种SVN链接。这意味着您可以有另一个版本化的文件夹,其中包含一个文件。在此文件夹的签出中提交更改也是可能的。

标记处包含该文件的文件夹,然后简单地向该文件夹添加一个属性

svn propedit svn:externals .

内容如下:

file.txt /repos/path/to/file.txt

提交此文件后,该文件将出现在后面的标记的文件夹中。

用户回答回答于

检查单个文件:Subversion不支持单个文件的查找,它只支持目录结构的查找出。(参考:http://subversion.tigris.org/faq.html single-file-checkout)。每个目录都会作为工作副本被查找出,修改/文件修改的原始数据存储为一个内部隐藏文件夹(.svn/_svn)。对单个文件不支持(v1.6)。

备用策略:您只需要执行一次checkout目录部分,然后您就可以直接去查找您的单个文件了。对父文件夹和目录结构进行简单标记出。简单标记基本上只检查文件夹结构而不填充内容文件。参考资料:http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-checkout.html

步骤1:转到仓库

步骤2 :右键单击存储库中的父文件夹,其中包含您希望工作的所有文件,并选择。

步骤3:在新的弹出窗口中,确保标记出目录能正确标记你本地PC上的正确位置。还有一个下拉菜单,标签为“标记级别”。根据你的要求选择“只有这个项目”或“直接的孩子,包括文件夹”。第二个选项是建议的,如果您想要在嵌套文件夹中工作,您可以在下次直接进行操作,否则您将不得不再次按照整个过程来执行嵌套的文件夹。

步骤4:父文件夹现在应该可以在本地选择的文件夹中使用,并且现在正在使用SVN(一个隐藏的文件夹)进行监视。“.svn”或“_svn”现在应该出现了。在仓库中,右键单击您希望单独检查的文件,并选择“更新项到修订”选项。现在可以对单个文件进行处理并重新检查。

用户回答回答于

如果您想查看仓库中的README.txt而不检查它: $vn cat http://svn.red-bean.com/repos/test/readme.txt

这是一个说明文件。 提示:如果您的工作副本已过时(或者您进行了本地修改),您希望在你的的工作副本中看到文件的头版本,SVN cat将会自动获取它的头版本: cat foo.c 此文件位于本地工作副本中,并进行了更改。 $ svn cat foo.c 最新的版本,新的仓库!

用户回答回答于

使用svn catsvn export...

您不需要获取工作目录,但是您将无法提交您所做的任何更改。如果您需要更改并提交它们,您需要创建一个工作目录,然后在目录中再进行修改,然后使用“svn cat”从HEAD中提取文件。

用户回答回答于

试一试svn export,svn checkout.适用于单个文件。

限制的原因是,checkout创建了一个工作副本,其中包含关于存储库、修改、属性等信息。单个文件没有子目录。

所属标签

可能回答问题的人

  • 西风

    renzha.net · 站长 (已认证)

    7 粉丝1 提问9 回答
  • 四无君

    0 粉丝0 提问3 回答
  • 旺仔小小鹿

    社区 · 运营 (已认证)

    46 粉丝0 提问2 回答
  • 拉布拉多拉不多

    1 粉丝0 提问2 回答

扫码关注云+社区

领取腾讯云代金券