2014-10-01 46 views
0

我对respositories的概念很陌生,已经阅读了SVN的一些内容,但工作流程让我感到困惑,可能是术语/专业术语,但我希望有人能澄清我的困惑。为SVN设置的初始项目

基本上,如果我有一个路径服务器上的代码说home/public_html /网站,并与svn使用版本控制我会安装svn服务器说home/svn,然后创建一个名为home/SVN /网站。

据我所知,如果我希望在本地电脑上使用该代码(比如Netbeans/XAMPP和TortoiseSVN),我首先要检查项目,进行更改,添加我想更新的文件,更新以便svn回购与我的更改保持同步。

我的困惑就在这里:

1)我如何在家庭/ SVN /站点的初始回购代码?我是否从public_html/site复制它?

2)当然有一个相关的问题,我在哪里做我的初始检查? public_html/site或/ svn/site? 3)最后,如果我想查看我的实时代码(/ public_html/site)中的更改,svb/site repo如何与它同步?

任何澄清将不胜感激,谢谢。

回答

0

一个(集中)的版本控制系统上创建一个新的储存库,典型的工作流程是:

  • 服务器
  • 结帐(克隆)(空)库到上创建一个新的空库开发工作站
  • 把所有源代码与项目文件在工作副本开发站上的工作拷贝
  • 提交将这些新文件放到存储库中。只提交源文件和项目文件(而不是构建文件)(对于Git,有https://www.gitignore.io/,您可以在其中搜索不同的项目类型,如NetBeans -projects。它告诉您哪些文件/目录不应受版本控制。 )
  • 当他人修改你的项目,你更新从仓库

理论上拉下来,让这些变成你的工作副本你可以结账您直播的网络服务器的存储库(假设它是一个你正在构建的Web应用程序),但可能你不需要像NetBeans这样的东西 - 你的在线服务器上的项目文件

因此,考虑一个构建/发布脚本。 (我不知道NetBeans如何处理此问题。)通常,此脚本将生成一个out目录,您可以在活动服务器上发布该目录。 (当然,您不要将版本控制下的out目录放在构建脚本中。)

您可能希望创建分支标签为每次您直播服务器上部署的版本,所以你可以跟踪它们。

+0

嗯好吧谢谢。我已经在开发服务器上有了工作副本。我们在服务器上安装了SVN。我们在桌面上安装了Netbeans以及现在可以从该SVN中检出的Tortoise。这个想法是,编码器将在桌面上工作,使更改和更新/提交回服务器回购。有人告诉我,最简单的方法是让repo更新后的代码成为服务器上的工作代码,只是在定时的时间间隔内执行rsycn或触发任何对桌面回购的提交,这听起来是否正确和/或与上述保持一致? – user3649739 2014-10-02 20:38:00

+0

'rsync'确实可以成为** build/publish-script **解决方案的一部分。 – hansvb 2014-10-10 10:50:08