svn - 使现有存储库适应颠覆主干/分支结构
问题描述
我已经开始研究一个使用 Subversion 进行版本控制的现有项目。我以前只使用过 Git,所以我一直在学习各种 svn 教程。几乎所有的项目都使用主干/分支/标签文件结构。我也想做同样的事情,因为我既要编辑项目(结果推送到主控),又要自己做定制的事情(结果保持在本地)。但是,该项目没有这种格式;它.svn
只是位于其根文件夹中。
如何为以这种方式组织的项目创建分支?我尝试svnadmin create
使用 trunk/branch/tag 结构创建自己的存储库 (),然后将项目签出到主干中,但我不知道如何使我的根项目目录成为工作副本。(svn relocate
要求我尝试重新定位到的位置本身就是一个工作副本。)即使使用svnadmin
似乎也是错误的,因为这会创建一个存储库,其成员也是一个存储库,并且这样做并没有将 a 添加.svn
到该根文件夹。
如果我想做什么不清楚,或者我应该包含关于文件结构、结帐过程等的任何有用的细节,请告诉我。我真的很难准确地描述我做了什么以及我考虑过什么。
编辑:我发现Subversion 分支没有规范的目录结构。这有一些相同的元素。但是,由于我不是管理员或项目负责人,我希望能够将远程更新拉到trunk
. 在其文件夹中移动.svn
似乎不正确。
解决方案
好的....我写的东西完全是对另一个问题的回应,对此感到抱歉....所以让我尝试获得:
就像我之前的回复一样,根本问题仍然是一样的:你想用 git 的心态来解决 svn ......这是不可能的。所以....
您如何创建将保持本地的分支和东西:您不能....使用 svn。与 git 不同,在 svn 上,所有东西都保存在一个仓库中(不同开发人员的工作副本除外)。所有分支、标签、修订等,它们都在那里,在一个地方......工作副本上保存的东西不多......在中央回购之外没有任何分支。
但是……诀窍是我用 svn说的。如果您使用 git,则可以利用 git 插件,该插件可用于在 git 和 svn 之间进行交叉。它将允许您与 svn repo 同步,就像它是一个 git 远程一样,您可以利用 git 的好处,如本地分支。
我并不是说处理它是微不足道的,但是通过一些练习,它可以让你使用比使用普通 svn 工作更多的灵活性。希望这足以让您能够实现自己的目标。
推荐阅读
- javascript - 如何使用javascript在文件中发布字符串?
- three.js - ThreeJS:InstancedMesh 三角形计数未更新
- ruby-on-rails - 带有Webpacker触发器的rails中的传单找不到地图容器
- python - 如何根据阈值划分列表?
- css - 预加载会阻塞整个渲染阶段
- android - java.lang.IllegalArgumentException:无法在形状为 [2] 的 TensorFlowLite 张量和形状为 [1、2] 的 Java 对象之间复制
- react-native-ui-kitten - 如何更改底部导航中选定的 BottomNavigationTab 的颜色( ui-kitten )
- xamarin - 我正在尝试在 Xamarin Android 中使用 Google ARCore sceneform SDK。但我在“ModelRenderable.InvokeBuilder().SetSource()”方法中遇到错误
- data-structures - 如何计算结果森林中一棵树的最大高度?
- javascript - 排序哈希键。获取顺序是固定的吗?