git svn 忽略路径使用忽略文件

标签 git svn git-svn gitignore

我正在将一个 svn 存储库转换为一个 git 存储库,我们有许多二进制文件,这些文件多年来一直被 checkin ,这些文件不应该有,还有图像和其他文件,我真的不想要这些文件存在于 git 仓库中占用空间。

我已经尝试使用 git-svn 来转换 repo 并使用了它的 -ignorepaths 属性,但我希望能够将列表馈送到忽略路径中,而不是必须为每个模式/目录指定一个忽略路径我想排除,如果我可以在转换过程中使用 svnignore/gitignore 文件来消除这些垃圾,那就更好了。

有没有办法做到这一点,还是我必须硬着头皮单独指定每个模式/路径?

编辑:更新问题以更清楚地说明我在问什么

最佳答案

如果您习惯了 git,Subversion 会有点复杂。 svn:ignore 是一个基于每个文件夹的属性。在特定文件夹中,您只能忽略特定文件或直接子文件夹。 您可以将文件传递给在 DIRECTORY 上设置忽略属性的命令,也可以将 .gitignore 文件传递​​给它:

svn propset svn:ignore -F .gitignore DIRECTORY

但由于上述原因,.gitignore 中真正实用的部分,如 */build 在 Subversion 中将不起作用。

你唯一能做的就是为 svn propset 使用 --depth 参数,例如,如果你传递 --depth immediates,它将设置 DIRECTORY 和每个直接子文件夹的属性。还有一些方法可以指定深度或只是使其无限化 - 我认为 TAB 补全在那里有效或查看帮助。

但仍有一个主要缺点:每次添加包含要忽略的文件的文件夹时,都必须再次运行 svn propset 命令。

关于git svn 忽略路径使用忽略文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12102836/

相关文章:

svn - 如何修复颠覆密码配置?

git - 失败 "git svn clone"的解决方法(需要完整的历史记录)

git - 个人账号可以在GitHub上建多少个公共(public)仓库?

尽管 gitignore 文件,Git 有选择地忽略

php - 如何向 Packagist 添加新的包版本?

git - 在 Git 中使用替代差异算法

svn - 尝试将 WC 重新定位到新存储库时出现问题

linux - Linux Mandriva 上的 SVN - 导入项目时出错 (svn : E0000013)

git - 一个 git 存储库可以跟踪 subversion 和 git remotes 吗?

svn - 在 Git 分支中跟踪 SVN 存储库