Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从SVN迁移到GIT_Svn_Git_Git Svn - Fatal编程技术网

从SVN迁移到GIT

从SVN迁移到GIT,svn,git,git-svn,Svn,Git,Git Svn,现在我们正在使用SVN进行subversion控制。我们对此非常满意。我们将其用于以下情况 项目共享和合并代码 现在我们还想使用下面的例子 有一个文件夹称为“plugin”,当我们在“plugin”中更改某些内容并提交它时,它需要作为子文件夹包含在许多项目中。这些更改应该影响所有拥有它的项目的子文件夹(至少应该显示项目中插件文件夹的传入更改) 我有以下疑问: 我们可以在subversion中处理第二个案例吗。如果是,如何 git对这两种情况都更好吗?如果是,那么如何从git开始并实现这

现在我们正在使用SVN进行subversion控制。我们对此非常满意。我们将其用于以下情况

  • 项目共享和合并代码
现在我们还想使用下面的例子

  • 有一个文件夹称为“plugin”,当我们在“plugin”中更改某些内容并提交它时,它需要作为子文件夹包含在许多项目中。这些更改应该影响所有拥有它的项目的子文件夹(至少应该显示项目中插件文件夹的传入更改)

我有以下疑问:

  • 我们可以在subversion中处理第二个案例吗。如果是,如何
  • git对这两种情况都更好吗?如果是,那么如何从git开始并实现这两种情况

  • 第二个用例可以通过Subversion实现。在您的项目中,将带有外部定义的空插件文件夹创建到单独的插件存储库中。当您签出或更新项目时,它将解析externals定义并更新/签出插件存储库。

    Git有一个名为svn externals的功能

    既然您提到了合并,Git非常擅长处理合并和分支,这也是开始在SVN上使用Git的重要原因之一。此外,Git是一个分布式版本控制系统,具有本地提交、分支、合并等附加优点,开发人员可以轻松地在他们之间推拉更改,而无需中央服务器/repo


    因此,如果项目共享和合并是您想要的,那么Git就是一条出路

    谢谢,还有一件事,如果插件目录中的文件分散在项目存储库中,它会工作吗???不会。你需要将它们拆分到单独的文件夹中。