Php 如何使用/htdocs目录结构中的文件设置SVN

Php 如何使用/htdocs目录结构中的文件设置SVN,php,svn,apache,version-control,Php,Svn,Apache,Version Control,在处理php文件时,我遇到了一个关于如何设置Subversion的小问题。我将所有文件存储在c:\www[name of project]\htdocs,并为每个项目设置虚拟主机。(c:\www\project1\htdocs\index.php映射到) 你们如何使用SVN?假设我有c:\svnrepos\存储每个项目的每个回购。现在,理想情况下,我希望从c:\svnrepos\project1到c:\www\project1的回购中结账,对吗?但是文档说要在一个空目录中执行,但是我怎么能预览我

在处理php文件时,我遇到了一个关于如何设置Subversion的小问题。我将所有文件存储在c:\www[name of project]\htdocs,并为每个项目设置虚拟主机。(c:\www\project1\htdocs\index.php映射到)

你们如何使用SVN?假设我有c:\svnrepos\存储每个项目的每个回购。现在,理想情况下,我希望从c:\svnrepos\project1到c:\www\project1的回购中结账,对吗?但是文档说要在一个空目录中执行,但是我怎么能预览我的代码而不首先将其移动到其他地方呢


谢谢你们的帮助

空目录并不意味着c:


因此,您可以安全地在c:\svnrepos\project1上拥有一个存储库,并签出到c:\www\project1来工作。

您可以做您想做的事情。如果您的回购协议位于
c:\svnrepos\project1
,那么您可以将一份新的工作副本签出到
c:\www\project1
,该副本应该是空的

如何预览我的代码


通过将代码签出到其他目录来预览代码。例如,将其签出到
c:\www\preview\project1
,并设置适当的虚拟主机。

有效地执行此操作的一种方法是将主干签出到c:\www\preview\project1,然后使用适当的虚拟主机或不同的url对其进行测试

当它工作时,您将签入各种版本的主干。当转移到您的“真正”主机/url的时机成熟时,您可以

  • 创建分支或标记以反映这一点(如Branchs/rel.1),然后
  • 将分支机构签出(svn公司)到c:\www\project1\htdocs
  • 之后,您可以在branchs/rel.1下进行紧急的bug修复,并将它们合并回trunk下正在进行的工作中。当另一个版本准备好时,您可以

  • 创建另一个分支(例如,分支/rel.2),并且
  • 开关(svn开关)c:\www\project1\htdocs到新分支
  • 通过这种方式,您可以防止您的开发干扰真正的服务,如果您有问题,还可以切换回早期版本

    对于更复杂但紧急的错误修复,您可以

  • 作为主干签入您的开发
  • 将c:\www\preview\project1切换到当前版本分支
  • 修复并测试c:\www\preview\project1中的错误,必要时提交
  • 如果满意,请执行最终签入,然后在c:\www\project1\htdocs上更新svn
  • 将c:\www\preview\project1切换回trunk,继续开发

  • 如果您已经将应用程序的一个实例签出到
    C:\www\project1
    ,并且希望预览自签出后所做的一些更改,而不更改现有应用程序,则需要创建一个新的空目录以将文件签出到中(或者您可以将现有的
    C:\www\project1
    移动到其他位置,创建一个新的空
    C:\www\project1
    ,然后签出到该位置)


    但是,如果您不需要同时提供新的更改和应用程序的原始版本,您可以随时使用SVN在
    C:\www\project1
    上用您所做的更改更新工作副本。如果您不喜欢这些更改,只需将该工作副本还原为早期版本。

    感谢所有的帮助,大家好我对这个问题有着宝贵的见解。