Svn Subversion:如何处理分支、标记和主干文件夹?

Svn Subversion:如何处理分支、标记和主干文件夹?,svn,mamp,versions,Svn,Mamp,Versions,先介绍一下背景: 我是一名设计师/开发人员,决定将subversion用于个人项目。我是唯一一个在这个项目上工作的人。我已经在Mac上安装了Beanstalk帐户和版本。在本地,我通过MAMP运行MySQL和PHP 我在版本中做的第一件事是单击“签出”按钮。我在本地计算机上选择了我的webroot文件夹,并创建了一个包含三个子文件夹的文件夹:分支、标记和主干。我不明白该怎么办。我的代码存在于webroot和一堆子文件夹中,如果不破坏它们,我无法将代码移动到这三个文件夹中的任何一个 所以,我的问题

先介绍一下背景:

我是一名设计师/开发人员,决定将subversion用于个人项目。我是唯一一个在这个项目上工作的人。我已经在Mac上安装了Beanstalk帐户和版本。在本地,我通过MAMP运行MySQL和PHP

我在版本中做的第一件事是单击“签出”按钮。我在本地计算机上选择了我的webroot文件夹,并创建了一个包含三个子文件夹的文件夹:分支、标记和主干。我不明白该怎么办。我的代码存在于webroot和一堆子文件夹中,如果不破坏它们,我无法将代码移动到这三个文件夹中的任何一个


所以,我的问题是,如何告诉版本我的代码在webroot文件夹中,而不是在它自己创建的文件夹中?

当您签出工作副本时,应该签出“主干”而不是存储库根。我对Beanstalk不太熟悉,但我可以想象您会有某种类型的存储库URL分配给您,如下所示:

您希望签出,而不是签出该URL


进入您的webroot目录。有关分支、标记以及subversion存储库的常规组织方式的更多信息,请参见。

根据您的描述,您似乎没有设置存储库。你可能想读一些关于Subversion的书……没有GUI能让你做好正确使用的准备。这里有一个指向免费书籍的链接:特别是,这是一个关于导入文件的参考:

“签出”用于将代码从subversion抓取到本地计算机。因为您还没有这样做,所以它基本上检查出一个空项目

您要做的是“导入”。将您的项目导入subversion中的/trunk。然后,如果需要,或者您想在本地计算机上创建第二个副本,您可以从/trunk签出

同时,无论何时您想要保存更改,您都可以将它们“提交”到subversion

/trunk将用作您的工作代码库。这是你所知道的正在工作的最新版本(当然减去一些bug)

/分支用于创建可能需要一段时间的大型功能。在这种情况下,您可能不希望该特性的一堆新代码混合到您的工作代码库中。这可能会给您带来一些问题,因此您可能希望将它们分开。为此,请在/分支中为每个要素创建子文件夹


/标记用于“标记”工作副本,如代码的beta版或发行版。t标记基本上获取了当时整个代码库的一个副本。稍后,您可以返回到该标记,并在创建该标记时获得代码库的确切版本。与/branchs一样,您需要为标记创建子文件夹

你是说“进口”而不是“出口”?我认为应该是这样的:“首先,你需要将你的项目导入subversion”,但还是不明白。我现在只有本地机器上的代码,从未执行过提交。如果在版本中点击“更新”,则不会添加任何内容,因为“分支”、“主干”和“标记”文件夹为空。这是否意味着我必须手动将我的所有文件从我的webroot复制到这三个文件夹中的一个?@Bartclayes我解释的关键部分(我现在用粗体显示)是,在您真正利用subversion的功能之前,您需要将您的项目导入subversion。我的帖子的其余部分回答了你的问题(分支、标记和主干文件夹是什么)。@Kevin谢谢,但我的问题是,如何导入代码?我想通过将它从我的webroot文件夹本地复制到/trunk文件夹?@bartclaeys,我建议您查看subversion常见问题解答。特别是提到“进口”的任何部分。我完全糊涂了。。。我(对一个空项目)进行了结帐,没有任何问题。问题是我的代码不在创建的文件夹中,因此没有要提交的内容。那么,我如何告诉版本我的代码在其他地方?