小编Rob*_*Rob的帖子

SVN:发布分支机构头痛,如何在网站修订时合并以及何时清除上线?

如果可以的话,我需要在这里进行健全检查,非常欢迎任何关于纠正/改变以下内容的想法!我们已经使用我们的SVN进入了最后阶段,并试图通过放置Trunk/Release系统来纠正它.

我们开发了一个大型网站,我们将它们全部存储在SVN中.以下是我们的想法:

  • 我们有trunk和release分支
  • 所有工作都会被检入Trunk.
  • 当某个功能被认为可以用于下一个版本时,它将合并到一个Release分支中.
  • 我们只有一个发布分支,只是在我们推动生活时标记"最新"
  • 我们希望能够将所有文件从"最新"改为"头",以便为我们提供一个可以上传的拉链(任何想法通过脚本轻松实现这一目的吗?)

所以我们把所有这些都放在了自己的位置.除了它不工作和继承人为什么.

我们同时处理很多不同的功能/修复/问题并且它们并没有很好地检查功能完整(但总是至少工作).然后,有时你必须等待客户签字.结果,你最终得到了"准备就绪"的修订版,其中散布着"仍然在工作中"的版本.这意味着已完成的修订不会按顺序合并但不按顺序合并.我认为SVN可以处理这个,聪明的小东西,但显然不是.

下面是一个例子:

  • Pete更改了一些CSS以使新按钮看起来很漂亮(修订版1)
  • Dave将一些CSS添加到与Pete相同的CSS文件的底部以获得新功能(修订版2)
  • Dave的mod获得了点头,因此他将其合并到Release中并使用提示修订号和bug跟踪ID的日志消息进行提交.
  • Pete增加了更多的按钮来完成这个mod,虽然没有CSS改变(修订版3)
  • 皮特然后合并MODS他(修订版1和3)进入释放的负责人(其中有戴夫斯在其合并),但这种过度写入戴夫斯CSS增补现在dissapear完全.

这导致网站被破坏,而Release分支几乎没用.

所以我们尝试了其他一些想法,例如将Release恢复为"Latest",然后按顺序合并所有修订版1,2和3.这个工作正常,直到我们的版本4还没有为现场做好准备,修订版5就是.突然间,我们又遇到了完全相同的问题!

好的,拿三个.恢复到最新,合并修订版5,然后将任何更新重新发送回Head.树冲突嘉豪!所以这不是没有.

我破获年底建成这一切manaually但它不是我想要做定期,最好我想剧本我们的部署,但不能同时发行是在这样一个烂摊子.

救命!我们做错了什么?我似乎无法找到任何解决方案来解决这个问题,即在发布中需要不同的顺序修订.如果它不可能那么好但是我们的意思是如何让事情变得容易.我们不能分支每一个变化,该网站需要30分钟+检查它将花费太长时间.

旁注,我们正在使用TortoiseSVN,所以我们可以在任何答案中将命令行示例保持在最低限度吗?

最新版本的TSVN和SVN版本1.6因此我们有时髦的合并跟踪等.

编辑:一篇优秀的博客文章,处理开发/发布周期(尽管使用GIT,但仍然相关),如果他们发现这个问题很有趣,那么每个人都想阅读它.(http://nvie.com/git-model)

编辑2:我写了一篇博客文章,介绍如何在你的网站上展示你正在研究哪个分支,其他人问我这个问题(http://www.offroadcode.com/2010/5/14/which-svn-branch-你在工作.aspx).希望有所帮助.与此同时,我们正在寻找窑,并希望下个月能够切换(gulp!)

svn tortoisesvn

12
推荐指数
2
解决办法
3663
查看次数

C#Debug vs Release

Windows服务在调试版本和发布版本之间获得多少性能提升(如果有的话)以及为什么?

c# debugging release

12
推荐指数
1
解决办法
1051
查看次数

我知道封闭是什么,但我仍然不明白为什么(或何时)你会使用它们

我对闭包的理解是它们本质上是一个函数,它使用一个你认为超出范围的变量.我想这是我前几天看到的一个例子:

function closureMaker(somearg)
{
    var local_value = 7;
    function funcToReturn(arg1, arg2)
    {
        return local_value + somearg + arg1 + arg2;
    }
    return funcToReturn;
}
var myClosure = closureMaker(6);  //make the closure
myClosure(2, 3);                  //using it
Run Code Online (Sandbox Code Playgroud)

现在闭包有local_value甚至是原始的arg,somearg.但我不明白为什么这些都有帮助.使用'free'变量local_value有什么意义,甚至更不为我所知,为什么你会在闭包函数中使用closureMaking函数的参数?

我对如何在javascript中使用它更感兴趣,这是否用于AJAX请求和对象?

我得到了什么.我需要为什么.

javascript closures programming-languages

12
推荐指数
2
解决办法
428
查看次数

如何在Wordpress中按标题发布帖子?

Wordpress 3.0

我希望通过使用帖子将特定帖子的内容放入页面中title.据我所知,我不能直接用它get_post().

我可以假设蛮力的方式可能是什么,但我怀疑有更优雅的方式?

wordpress

12
推荐指数
2
解决办法
3万
查看次数

通过Web部署项目更改应用程序池

有没有办法配置Visual Studio 2005 Web部署项目以将应用程序安装到命名的应用程序池而不是给定网站的默认应用程序池?

c# deployment windows-installer asp.net-2.0

11
推荐指数
1
解决办法
7000
查看次数

SQL 2008:将数据行作为JSON返回?

我觉得这个问题就像粘土皮江射击......"拉......砰!" ..击落......但是,我相信这是值得的.

现在有很多JS框架等使用JSON,我知道这个理由很充分.经典问题是"将数据转换为JSON的位置".

我理解在管道中的某个时刻,你必须将数据转换为JSON,无论是在数据访问层(我在看JSON.NET)还是我相信.NET 4.x都有输出方法/序列化为JSON.

所以问题是:考虑将SQL函数输出为JSON真的是个坏主意吗?

限定符:我理解尝试输出这样的1000行并不是一个好主意 - 实际上对于Web应用程序来说这不是一个好主意,除非你真的必须这样做.根据我的要求,我一次可能需要100行......

.net c# sql json sql-server-2008

11
推荐指数
1
解决办法
5260
查看次数

在特定线程C#上调用委托

有没有办法让委托在特定的线程上运行?

说我有:

CustomDelegate del = someObject.someFunction;
Thread dedicatedThread = ThreadList[x];
Run Code Online (Sandbox Code Playgroud)

我是否可以拥有一致的后台长时间运行线程,并在需要时调用我自己的代理.它必须每次都是相同的线程.

[编辑]

我希望它在专用线程上的原因是时间是我打算在它上面运行委托并在y毫秒后暂停该线程,并在我运行另一个委托时恢复该线程.我觉得这是不可能的.我将有一个委托队列,让线程的主要功能从它读取并运行.

为了澄清一个具体的例子,我有一个带有一堆玩家线程的游戏系统.我希望每个playerthread都可以在其上运行游戏事件的事件处理程序.如果事件处理程序花费太多时间,我希望能够通过暂停其线程来暂停该特定玩家直到下一个事件.

因此,有一个专用线程,我可以运行多个事件处理程序,我可以暂停一个特定的玩家的AI,以防它被窃听或花费太长时间.

c# multithreading delegates

10
推荐指数
1
解决办法
1万
查看次数

IIS Express(WebMatrix)为外部连接打开

我已经在端口80和2012上启用了IIS Express(HTTP Traffic In)和IIS Express(HTTPS Traffic In)的防火墙规则(这个在WebMatrix中使用),但我无法从LAN连接到服务器.WebMatrix正在虚拟Windows 7计算机上运行.

这是IIS Express的限制吗?>是 - 您可以使用您的应用程序重新分发IIS Express.没有连接限制. ScottGu的博客

asp.net iis webmatrix

10
推荐指数
1
解决办法
6323
查看次数

自定义用户控件中的ASP嵌套标记

我刚刚开始使用C#中的自定义用户控件,我想知道是否有任何关于如何编写接受嵌套标签的示例?

例如,在创建时,可以为其asp:repeater添加嵌套标记itemtemplate.

.net c# asp.net custom-server-controls

9
推荐指数
2
解决办法
6056
查看次数

如何测试永远不会执行的代码?

只有在验证存在无效数字(通过调用另一种方法)时,才会调用以下方法.如何throw在以下代码段中测试-line?我知道一种方法可能是将VerifyThereAreInvalidiDigits这种方法合并在一起.我正在寻找任何其他想法.

public int FirstInvalidDigitPosition {
    get {
        for (int index = 0; index < this.positions.Count; ++index) {
            if (!this.positions[index].Valid) return index;
        }
        throw new InvalidOperationException("Attempt to get invalid digit position whene there are no invalid digits.");
    }
}
Run Code Online (Sandbox Code Playgroud)

我也不想写一个单元测试来运行永远不会被执行的代码.

c# testing unit-testing code-coverage

9
推荐指数
1
解决办法
1107
查看次数