【问题标题】:Synchronize git-svn branch with git repository将 git-svn 分支与 git 存储库同步
【发布时间】:2018-12-17 10:06:56
【问题描述】:

我们有一个使用 SVN 作为版本控制的客户端。我们必须使用他们的存储库,他们不想为我们创建分支,只为他们部署的分支,所以我们不能创建小提交,只有在准备好部署功能时才创建大提交。

我读过 git-svn,我认为它几乎是完美的解决方案。但是有没有办法将本地创建的分支与外部存储库同步?既可以备份也可以与其他人同步。

我的意思是,您拥有 SVN 存储库。用 Git 克隆它并创建一个分支(在本地,不允许在 SVN 存储库中这样做)。有没有办法使该分支指向任何新创建的存储库。就像从该分支创建的不同存储库一样。

我希望我能解释一下。这可能吗?

【问题讨论】:

    标签: git svn git-svn


    【解决方案1】:

    在你用类似这样的东西克隆了 subversion 存储库之后

    git svn clone -s $SVN_URL proj-clone
    

    你可以添加一个“真正的”git远程仓库:

    cd proj-clone
    git remote add team $GIT_URL
    

    您必须选择与通常的origin 不同的远程名称,因为git svn 将使用与git remote 相同的引用(例如refs/remotes/origin/trunk)进行跟踪。

    之后你可以像往常一样拉/推到 git-remote。


    如果 - 另一方面 - 你只想像这样跟踪 一个 分支:

    git svn clone $SVN_URL/trunk proj-clone
    

    那么git svn 不使用命名空间refs/remotes/origin/* 而是refs/remotes/git-svn。在这种情况下,您可以使用通常的 origin 作为远程名称。


    无论如何:您可以在git svn clone 期间使用--prefix= 参数来修改它。 (见docs)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-19
      • 2013-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-06-09
      • 1970-01-01
      相关资源
      最近更新 更多