GIT合并引入了新的提交.这会导致"git blame"出现问题:合并后的行似乎是由执行合并的开发人员提交的.
我可以理解这是冲突变化的情况(因为他解决了冲突).但有没有办法让非冲突的线条发生这种情况?一些选择"git责备"?
如果没有办法,当你有很多合并时,这基本上会使"git blame"几乎无用 - 而且GIT鼓励大量的合并.
SVN是否存在非冲突合并的问题?我不这么认为,但我可能错了,因为我(理解上)在使用SVN时避免像瘟疫这样的分支.
Gradle 可以轻松地在运行时添加任务依赖项。
添加任务依赖性后是否还可以将其删除?
作为一个用例,假设我们希望在单独的管道步骤中运行 checkstyle,而不是作为主构建的一部分。因此,我们应用该checkstyle插件,但这会添加一些依赖于check. 我想打破这种依赖性,以便checkstyle仅在显式运行时运行,而不是作为build(取决于check,取决于checkstyle*)的一部分运行。
为了完成上述任务,我可以将主管道步骤运行为build -x checkstyleMain -x checkstyleTest. 另一种解决方法是将enabledcheckstyle 任务的属性设置为 false。
但对于这个问题,我感兴趣的是一种删除任务依赖关系的通用方法,以便任务图缺少两个任务之间的边缘,就像从未添加依赖关系一样。这个问题并不容易,因为:
gradle.taskGraph.whenReady可能会失败(因为不再允许更改任务图。一个好的答案是,这肯定是不可能的,在这种情况下,我可以向 Gradle 团队提出功能请求。
我尝试将 @Chriki 的 groovy 转换为 kotlin,如下所示:
project.afterEvaluate {
tasks.check {
dependsOn -= tasks.find {
it.name.startsWith("checkstyle")
}
}
}
Run Code Online (Sandbox Code Playgroud)
但这行不通。我收到错误:“不支持从任务实例中删除任务依赖项。”