代码之家  ›  专栏  ›  技术社区  ›  Brandon Montgomery

Web.config文件版本控制

  •  4
  • Brandon Montgomery  · 技术社区  · 15 年前

    目前,我正在使用一个共享数据库模型进行开发。我知道,最好使用本地开发数据库以正确的方式进行数据库版本控制,而不让一个开发人员破坏其他人的代码。所以这就是我想说的。我有一个关于web.config文件不过要归档。如何确保每个开发人员拥有自己的本地开发数据库后,不必在每次从源代码管理获得更新时手动更改DB连接字符串?最好的办法是什么?

    例如,假设Johnny Devweb.config文件包含如下连接字符串的:

    server=JohnnysBox;database=JohnnyAppDev1;
    

    server=SUE;database=development;
    

    所以现在Susie和Johnny继续向web.config文件文件,并且每次获得更新时,都必须更改所有应用程序中的连接字符串。

    8 回复  |  直到 15 年前
        1
  •  2
  •   VonC    15 年前

    对于配置或设置文件,需要更新的版本是:

    • 模板文件( server=@USER_NAME@;database=@DATABASE_NAME@; )
    • 一个或多个值文件
        2
  •  3
  •   Chris Shaffer    15 年前

    这只是部分解决方案,但您可以让所有开发人员使用cliconfg为自己的SQL服务器创建一个别名。

    然后web.config文件在源代码管理中,例如:

    server=LocalServerAlias;database=development
    
        3
  •  1
  •   Mark    15 年前

        4
  •  1
  •   Kevin Tighe    15 年前

    我处理这个问题的方法就是不签入特定于开发人员的配置文件更改。

    当需要签入配置更改时,我从一个“clean”配置文件开始,进行所需的更改,然后签入。当其他人获取最新版本时,他们可以将这些更改合并到本地版本中。

        5
  •  1
  •   ThatBlairGuy    15 年前

    我们在我办公室提出的解决办法是,我们明确排除web.config文件从版本控制,但只在www文件夹。这允许开发人员在本地进行他们需要的任何更改。

    在一个单独的文件夹中,我们有一个web.config文件哪一个

        6
  •  1
  •   Bram Pellens    15 年前

    您可以创建多个Web.config文件文件,具体取决于应用程序运行的环境。使用转换语法可以修改Web.config文件包括或遵守您自己的本地设置。

    http://msdn.microsoft.com/en-us/library/dd465326(VS.100).aspx

    之后,排除这种习俗Web.xxx.config文件从您的存储库。

        7
  •  1
  •   Matt    15 年前

    我们还分为“真正的”web.config文件,以便我可以与自己的本地版本进行比较,以查看是否添加了任何appsettings或任何其他类型的更改。然后我就更新我的Mattweb.config文件一切又好了。

        8
  •  0
  •   David    15 年前

    使用(local)作为sql server名称,并且它始终引用本地服务器。这应该是web.config文件你签入源代码管理。

    对于生产“安装”,安装程序应该询问用户是否要使用远程sql server,如果是,请更新web.config文件文件作为安装过程的一部分。