调整现有存储库以颠覆 trunk/branch 结构
Adapt existing repository to subversion trunk/branch structure
我已经开始处理一个使用 Subversion 进行版本控制的现有项目。我以前只用过Git,所以我一直在浏览各种svn教程。几乎所有的项目都使用 trunk/branch/tag 文件结构。我也想这样做,因为我既要编辑项目(将结果推送到 master),又要自己做自定义的事情(结果保存在本地)。但是,该项目没有这种格式;它的 .svn
就在它的根文件夹中。
如何为以这种方式组织的项目创建分支?我已经尝试使用 trunk/branch/tag 结构创建自己的存储库 (svnadmin create
),然后将项目检出到主干中,但我不知道如何制作 my根项目目录一个工作副本。 (svn relocate
要求我尝试重新定位的位置本身就是一个工作副本。)即使使用 svnadmin
似乎也是错误的,因为这会创建一个其成员也是一个存储库的存储库,而这样做并没有将 .svn
添加到该根文件夹。
如果我想做的事情不清楚,或者我应该包括关于文件结构、结帐过程等的任何有用细节,请告诉我。我真的很难准确描述我做了什么和我做了什么考虑过尝试。
编辑:我找到 Subversion branching without having canonical directory structure。这有一些相同的元素。但是,由于我不是管理员或项目负责人,我希望能够将远程更新拉到 trunk
。在其 .svn
文件夹中移动似乎不正确。
好的....我写了一些东西来回答一个 不同的 问题,很抱歉...所以让我试试增益:
就像我之前的回复一样,根本问题仍然是一样的:你想用 git 的思维方式来解决 svn ......这是不可能的。所以....
如何创建将保留在本地的分支和内容:你不能 .... 使用 svn。与 git 不同,在 svn 上有一个存储库,其中 所有内容 都被保存(不同开发人员的工作副本除外)。所有分支、标签、修订等,它们都在那里,在一个地方……工作副本上没有太多保留……并且在中央仓库之外没有分支。
但是...诀窍是我说 with svn。如果你使用 git,你可以利用一个 git 插件,它可以用来在 git 和 svn 之间交叉。它将允许您与 svn 存储库 同步,就像它是 git 远程 一样,您可以利用 git 的好东西,比如本地分支.
我并不是说处理它很简单,但稍加练习就会让您比使用普通 svn 更灵活地工作。希望这足以让您实现目标。
我已经开始处理一个使用 Subversion 进行版本控制的现有项目。我以前只用过Git,所以我一直在浏览各种svn教程。几乎所有的项目都使用 trunk/branch/tag 文件结构。我也想这样做,因为我既要编辑项目(将结果推送到 master),又要自己做自定义的事情(结果保存在本地)。但是,该项目没有这种格式;它的 .svn
就在它的根文件夹中。
如何为以这种方式组织的项目创建分支?我已经尝试使用 trunk/branch/tag 结构创建自己的存储库 (svnadmin create
),然后将项目检出到主干中,但我不知道如何制作 my根项目目录一个工作副本。 (svn relocate
要求我尝试重新定位的位置本身就是一个工作副本。)即使使用 svnadmin
似乎也是错误的,因为这会创建一个其成员也是一个存储库的存储库,而这样做并没有将 .svn
添加到该根文件夹。
如果我想做的事情不清楚,或者我应该包括关于文件结构、结帐过程等的任何有用细节,请告诉我。我真的很难准确描述我做了什么和我做了什么考虑过尝试。
编辑:我找到 Subversion branching without having canonical directory structure。这有一些相同的元素。但是,由于我不是管理员或项目负责人,我希望能够将远程更新拉到 trunk
。在其 .svn
文件夹中移动似乎不正确。
好的....我写了一些东西来回答一个 不同的 问题,很抱歉...所以让我试试增益:
就像我之前的回复一样,根本问题仍然是一样的:你想用 git 的思维方式来解决 svn ......这是不可能的。所以....
如何创建将保留在本地的分支和内容:你不能 .... 使用 svn。与 git 不同,在 svn 上有一个存储库,其中 所有内容 都被保存(不同开发人员的工作副本除外)。所有分支、标签、修订等,它们都在那里,在一个地方……工作副本上没有太多保留……并且在中央仓库之外没有分支。
但是...诀窍是我说 with svn。如果你使用 git,你可以利用一个 git 插件,它可以用来在 git 和 svn 之间交叉。它将允许您与 svn 存储库 同步,就像它是 git 远程 一样,您可以利用 git 的好东西,比如本地分支.
我并不是说处理它很简单,但稍加练习就会让您比使用普通 svn 更灵活地工作。希望这足以让您实现目标。