【问题标题】:SVN publish to Apache after commit and mergeSVN 在提交和合并后发布到 Apache
【发布时间】:2012-12-16 01:44:47
【问题描述】:

我对 SVN 很陌生,所以这可能很简单,但我保证我已经花了一整天的时间。这是设置:

Apache 安装在 /www/ 下,网站在 /www/htdocs/example.com/www/ 下

我有一个正常工作的 SVN 服务器(同一台机器),我想手动或在提交后自动发布(使用钩子),将内容发布到目标:/www/htdocs/example.com/www/。仓库位于 /svn/www.example.com 下。到目前为止,我遇到了两个问题:

  1. 如果我运行“svn export --force file:///svn/www.example.com /www/htdocs/example.com/www”,它会创建一个新目录:/ www/htdocs/example.com/www/www.example.com。我可以在没有根目录的情况下进行导出,而只导出其内容吗?
  2. 网站根目录 (/www/htdocs/example.com/www) 已经有用户上传的文件,因此从 svn 导出应该只覆盖在 repo 中找到的文件,其余部分保持不变(基本上是合并)。

谢谢!

【问题讨论】:

    标签: apache svn


    【解决方案1】:

    您可以创建一个到 www 目录的结帐,而不是导出。您可以在 apache 中 deny access to .svn folder

    然后当 SVN 服务器上有提交时,更新您的工作副本并将其设置为丢弃本地冲突更改:

    svn update --accept theirs-full /www/htdocs/example.com/www 
    

    您也可以先执行svn revert 来丢弃所有本地更改。 svn checkout --forceshould also work.

    【讨论】:

    • 如果我执行svn co file:///svn/www.example.com /www/htdocs/example.com/www,我最终会得到以下目录:/www/htdocs/example.com/www/www.example.com/ 我需要将文件直接放在 repo 中在 /www/htdocs/example.com/www
    • 找到了!问题是如何将 Eclipse 项目配置为使用 SVN。 www.example.com 文件夹是 Eclipse 在 SVN 中创建的(实际上是我,我的愚蠢配置)。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-09-04
    • 1970-01-01
    • 1970-01-01
    • 2013-03-18
    • 2012-11-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多