标签: svn-checkout

如何从Subversion存储库中git-svn克隆最后n个修订版?

问题

如何使用来自Subversion存储库的git-svn创建浅表副本,例如,如何仅提取最后三个修订版?

git clone如果您使用该选项--depth,该命令可以从Git存储库获取最后n个修订版,即您获得存储库的浅表副本.例:

git clone --depth 3 git://some/repo myshallowcopyrepo
Run Code Online (Sandbox Code Playgroud)

git-svn有类似的选择吗?

到目前为止我的发现

到目前为止,我只找到了-rN选项在哪里N进行修改.例:

git svn clone -rN svn://some/repo
Run Code Online (Sandbox Code Playgroud)

根据文档,有可能使用-r$REVNUMBER:HEAD.我尝试了以下内容来获取最后3个修订版,它们返回了一条错误消息.

$ git svn clone --prefix=svn/ -s -rHEAD~3:HEAD http://some/svn/repo .
revision argument: HEAD~3:HEAD not understood by git-svn
Run Code Online (Sandbox Code Playgroud)

所以我用HEAD~3第三个但最后一个修订版534的实际数字替换了.这有效,但这要求我首先找出第三个但最后一个提交的修订号.

$ git svn clone --prefix=svn/ -s -r534:HEAD http://some/svn/repo .
Run Code Online (Sandbox Code Playgroud)

文档

混帐克隆

GIT-SVN

svn git git-svn git-clone svn-checkout

310
推荐指数
3
解决办法
13万
查看次数

SVN签出文件夹的内容,而不是文件夹本身

我是linux和svn的新手.我正在尝试使用此命令将项目的trunk文件夹签出到我的public_html目录中(在public_html中):

svn checkout file:///home/landonwinters/svn/waterproject/trunk
Run Code Online (Sandbox Code Playgroud)

waterproject目录包含解压drupal基本安装的文件.

它检查正常,除了所有文件都在,public_html/trunk而不是只是在public_html.

我不知道将trunk的所有内容移动到public_html和rm trunk的命令,但我想我可以相对容易地解决这个问题.我只是想知道我是否可以查看文件夹的内容,而不是文件夹本身.

linux svn svn-checkout

142
推荐指数
4
解决办法
11万
查看次数

SVN checkout忽略文件夹

我可以忽略svn checkout上的文件夹吗?我需要在我的构建服务器上的结帐时忽略DOCs文件夹.

编辑:忽略外部不是一个选项.我有一些我需要的外部因素.

svn cruisecontrol.net build-automation svn-checkout

98
推荐指数
4
解决办法
8万
查看次数

Subversion:我可以签出,修改,然后将其作为分支吗?

我从我的行李箱到当地的DIR办理了结账,并在那里进行了大量的本地变更.现在我不想将它提交回主干,但我宁愿从这个本地版本创建一个分支.那可能吗?

可我只是树干复制到一个分支,然后cd DIRsvn switch分支?

更新:谢谢你的答案,它的工作原理!总结步骤:

  • cd DIR
  • svn copy . new-branch-URL
  • svn switch new-branch-URL .

(注意点)

svn branch svn-checkout

80
推荐指数
3
解决办法
3万
查看次数

SVN中结帐和导出的区别

SVN checkout和SVN导出之间的确切区别是什么?

据我所知,export不包含包含元数据的.svn目录,checkout包含.svn目录.然而,我的同事最近遇到了这个问题,从结账和从SVN回购导出的资源编译的东西有不同的行为.它们都编译正确,但是从svn export工作中编译的那个,但是签出的那个根本不起作用.

PS:正在编译的东西是在嵌入式设备中使用的Linux 2.4内核.图像正确编译和加载,但签出的图像不起作用.它会在insmod期间导致内核崩溃.为什么会发生这种情况?

PPS:我们尝试使用校验和和差异工具来检查从SVN导出和签出的两个目录之间的区别.除.svn目录外,它们都是相同的.

linux svn export svn-checkout

72
推荐指数
4
解决办法
10万
查看次数

减小.svn文件夹的大小

在我们的项目中,我们决定使用预先构建的二进制文件来缩短构建时间.每周/每月我们创建一个稳定版本并将其提交到存储库.构建使用这些二进制文件而不是从源代码构建所有内容.

对于构建速度来说这太棒了.但是,毫不奇怪,它确实增加了SVN结账大小.我们的主干目前约为22 GB.我意识到这不是Subversion的预期用法.但我们目前没有替代方案.

但我想改善现状.该.svn文件夹对磁盘上的中继大小有很大贡献.更新二进制文件时,它似乎在.svn文件夹中保留了几个基础.也就是说,如果一个二进制文件是4 GB,那么就有一个副本.svn.如果它已更新,则该.svn文件夹将保留原始基础加上新基础,并为该文件最多容量为8 GB.

是否有可能告诉Subversion不要在.svn文件夹中为某些文件保留基础?通过谷歌我发现了一个类似的问题,如何减少.svn文件夹的大小?.

西蒙收到的答案是

  • 使用部分结账(这对我来说不起作用,因为我需要二进制文件)
  • 这还不是Subversion的一个功能
  • 它已被讨论过,但至少在Subversion 1.8之前不会成为一个功能

幸运的是,subversion 1.8已经发布了.这个功能是否已添加?

我没有在发行说明中注意到它.虽然"目录和财产存储减少"看起来很有希望.

svn size svn-checkout

63
推荐指数
2
解决办法
4万
查看次数

svn结账深度

我有一个像这样的树的SVN项目:

/project
    /dir1
        /subdir1
           -file1
           -file2
            .....
        -file1
        -file2
        .....
    /dir2
        -file1
        -file2
        .....
    /dir3
        /subdir1
           -file1
           -file2
            .....
        /subdir2
           -file1
           -file2
            .....
        /subdir3
           -file1
           -file2
            .....
        /subdir4
           -file1
           -file2
            .....
    /dir4
        -file1
        -file2
        .....
-file1
-file2
Run Code Online (Sandbox Code Playgroud)

我需要结账

  • 来自/ project的所有文件
  • 满/ dir1
  • 满/ dir2
  • 满/ dir4
  • 从/ dir3我只需要/ subdir1和/ subdir3

我可以使用某种深度的svn命令行检查这些文件/文件夹吗?如果是这样我该怎么办?我可以在结帐后将divir2添加到dir3吗?如何更新以这种方式创建的工作副本?普通的"svn up"命令是否只更新这些文件夹或项目的完整更新?

svn svn-checkout

43
推荐指数
1
解决办法
4万
查看次数

如何仅使用TortoiseSVN Checkout(下拉)SVN树的部分?

我正在使用TortoiseSVN,我想将现有存储库的Checkout导入本地目录.但是,我只想删除文件树的某些部分.有没有办法可以做到这一点?

例如:

/trunk
    /project-A
    /project-B
    /project-C
Run Code Online (Sandbox Code Playgroud)

假设我只想拉下trunk,project-A和project-B.我怎么做?

svn tortoisesvn svn-checkout

42
推荐指数
3
解决办法
3万
查看次数

转换SVN结帐以使用git(git-svn)

我使用svn中保存的软件进行版本控制.我想使用git(git-svn),但软件需要大量的设置和配置才能使用.有一些工具可以处理所有设置,包括通过svn检出所有代码.

git-svn的所有文档(我已经能够找到)需要使用git-svn进行新的检查.

有没有办法转换现有的svn结账,以便它可以使用git-svn?

svn git git-svn git-checkout svn-checkout

31
推荐指数
2
解决办法
9298
查看次数

如何添加/删除文件夹而无需从Subversion中的存储库下载?

我有一个巨大的存储库,我想添加/删除一个文件夹.我还没有检查出任何东西.有什么方法可以快速完成吗?

svn commit svn-checkout

27
推荐指数
5
解决办法
2万
查看次数