Fossil-SCM仅拉取特定文件

时间:2014-01-09 17:45:03

标签: version-control pull fossil

我试图只从化石scm中提取一个特定的文件,但我得到的唯一答案是

 Fossil internal error: repository does not exist or is in an unreadable directory: blahblah

我尝试使用的命令是

 fossil pull "file" -R "http://user@ip/folder/to/fossil"
 fossil pull "" -R "http://user@ip/folder/to/fossil/file"

我不懂文档。如果我只是想在不打开和克隆回购的情况下下载特定文件,我该怎么做?

1 个答案:

答案 0 :(得分:4)

您无法从化石服务器单个文件。 Pulling将远程存储库中的所有(新)更改检索到本地存储库。它是sync命令的读取部分,它要求您先克隆存储库。 (-R命令行选项始终指示本地存储库。)

但在我看来,您想要的只是从远程存储库下载特定文件。要做到这一点,只需使用浏览器浏览化石服务器的网站(我使用Fossil自己的源代码存储库作为示例):

http://fossil-scm.org/fossil/dir?ci=trunk

http://fossil-scm.org/fossil/tree?ci=trunk

并单击所需的文件。在显示该文件的页面上,有一个Download按钮,可以下载该特定文件的版本。

如果文件不是文本或HTML,您可以使用http,使用所谓的文档 URL下载文件:

http://<server>/doc/<version>/<path-to-file>

例如,假设您要从主Fossil存储库下载文件trunk的{​​{1}}版本。这可以通过下载以下URL来实现:

http://fossil-scm.org/fossil/doc/trunk/www/concept1.gif

该URL的组成如下:

  • www/concept1.gif是存储库的位置;
  • http://fossil-scm.org/fossil表示您想直接访问存储库的文件;
  • /doc/表示您要访问的签到。这也可以是签到标识符(如e319e8e870)或标记(如pending-review)。如果您指定了标记或分支名称,则将分别在该分支中获取与该标记的最后一次签入相关联的文件;
  • trunk是您要访问的文件的存储库中的路径。

注意如果您请求的文件是wiki,text或HTML页面,fossil会将其页眉和页脚添加到其中。