val gitHeadCommitSha = taskKey[String]("Determines the current git commit SHA")
gitHeadCommitSha := Process("git rev-parse HEAD").lines.head
在上面的代码中,我假设=
创建了一个密钥(我认为它类似于声明一个变量而:=
声明了一个设置。所以SBT允许声明一个密钥和一个设置同名?或gitHeadCommitSha
是一项任务?
答案 0 :(得分:0)
gitHeadCommitSha
是TaskKey[String]
类型的值,而gitHeadCommitSha := Process("git rev-parse HEAD").lines.head
是类型Setting[Task[String]]
的值。
就=
vs :=
而言,=
是用于定义绑定的scala原语,而:=
是TaskKey
上的方法(以及其他键)定义一个设置(通常不分配给变量)。
那么代码所做的是定义一个名为“gitHeadCommitSha”的任务键,然后设置该键的值。