Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
处理SVN中不同服务器的web.config文件的标准方法是什么?_Svn_Web Config_Web Deployment - Fatal编程技术网

处理SVN中不同服务器的web.config文件的标准方法是什么?

处理SVN中不同服务器的web.config文件的标准方法是什么?,svn,web-config,web-deployment,Svn,Web Config,Web Deployment,我正在尝试确定一种处理不同环境的web.config文件的好方法。我的工作站、开发服务器、临时服务器和生产服务器在web.config文件中的设置略有不同。我希望对不同的web.config文件进行版本控制。除了历史记录之外,它还使在服务器之间移动文件变得容易。处理这种情况的最佳方法是什么 以下是我目前的策略/程序: 我的项目包含4个配置文件:web.config、web_local.config、web_dev.config、web_stg.config和web_prod.config 使用

我正在尝试确定一种处理不同环境的web.config文件的好方法。我的工作站、开发服务器、临时服务器和生产服务器在web.config文件中的设置略有不同。我希望对不同的web.config文件进行版本控制。除了历史记录之外,它还使在服务器之间移动文件变得容易。处理这种情况的最佳方法是什么

以下是我目前的策略/程序:

  • 我的项目包含4个配置文件:web.config、web_local.config、web_dev.config、web_stg.config和web_prod.config
  • 使用SVN设置时,将忽略web.config
  • 使用SVN在服务器之间移动文件以签入和签出文件
  • 使用SVN更新到最新副本后,每个系统上的web.config文件将替换为相应的web######.config。(我通过将文件复制到新目录,重命名为web.config,然后将其拖回原始目录以替换工作副本来完成此操作。)
这是可行的,但感觉这不是处理事情的最佳方式。
以下是我想到的问题:

  • 将相应的.config文件复制到新目录、重命名并用于替换当前目录的最后一步似乎很笨拙,而且容易出错。其中两个站点位于同一台计算机上,使用不正确的配置文件进行替换比人们想象的要容易
  • 服务器设置应隐藏web#######.config文件,使公众无法访问,但当每个站点只需要一个web#####.config文件时,从SVN中为每个项目下拉所有web#######.config文件仍然感觉不合适。如果我能从SVN获得所需的文件就更好了。我可以在更新SVN目录后手动删除未使用的文件,但由于缺少文件,这会导致SVN对目录进行红色检查。如果可能的话,我想要一个只包含所需文件的绿色检查目录。是否可以自定义每个目录以下载不同的文件集

其他人用什么策略/技术/程序来处理这种情况?

也许?!好发现。这让我很困惑,为什么在我的搜索中没有出现这个问题,因为它听起来像是同一个一般问题。我的问题有所不同,因为它添加了一个警告,即SVN用于将这些文件移动到不同的服务器。链接问题的答案使用了在构建和部署期间发生的技术。我使用DNN作为网站的CMS,不需要为不同的环境进行构建和部署。我根本不构建,除非在创建自定义模块时,我只是移动文件。因此,链接问题的答案不适用于我的特殊情况。