git-svn 仅导入分支

标签 git git-svn

我只想从 svn 存储库导入 1 个分支作为 git 存储库。所以我希望该分支的内容成为主控。我不想要存储库中的任何其他内容。我也不太希望能够提交到原始的 svn 存储库。事实上,我不希望我的 svn 存储库发生任何事情。

示例:

branches
  branch1
  branch2
  some-branch
    project

所以我希望 project 文件夹的内容成为我的主分支。我怎样才能做到这一点?

谢谢。

编辑

看起来有分支被 merge 到我的分支中,而 git-svn 找不到历史记录,因为它在查找

分支/一些分支/项目/分支/branch1

它认为我的远程分支是根。我该如何修复它?

最佳答案

1) 在 .git/config 中定义新分支:

[svn-remote "release-branch"]
        url = svn+ssh://<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="c9bcbaacbb89b0a6bcbbada6a4a8a0a7e7aaa6a4" rel="noreferrer noopener nofollow">[email protected]</a>/source/branches/mono-2-2/mcs
        fetch = :refs/remotes/git-svn-release-branch

2) 导入SVN分支。 SVN_BRANCHED_REVISION 是 SVN 中发生分支时的修订版本。

[~]$ git svn fetch release-branch -r SVN_BRANCHED_REVISION

3) 将本地 Git 分支挂接到远程分支:

[~]$ git branch --track release git-svn-release-branch

5) checkout 和更新

[~]$ git checkout release
[~]$ git svn rebase

关于git-svn 仅导入分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4291347/

相关文章:

eclipse - Git 提交不可能。没有暂存文件

git - git-svn 的钩子(Hook)

git-svn 分支而不复制每个子目录

git - 进入项目根目录的 .gitignore 不会被进入子目录的 .gitignores 覆盖

git - 如何在 github.com 上为双因素身份验证配置 Cygwin git?

python - GitPython 如何克隆所有分支?

android - 在 2 台计算机上的 Android Studio 中开发 - 并且 app.iml 始终更改

svn - git-svn 无法提交,即使在干净 checkout 后也是如此

Git - 在 git-svn clone 之后删除远程分支

svn - 我可以使用 git-svn 并看起来像我在使用 SVN,如果可以的话怎么办?