我有一个由Github组织插件创建的Jenkins构建工作.在Jenkinsfile此构建检出使用的代码checkout scm,这是很好,因为它无论是建设PR引起的变化或推到主分支时,计算出正确的分支/修订结帐.
我怎么能这样做:
node {
checkout scm
}
Run Code Online (Sandbox Code Playgroud)
结帐子模块?
我可以使用OpenOptions或类似的单一方法打开创建它及其父目录的文件吗?
这只会创建一个新文件,如果我的路径包含不存在的目录,则它不起作用:
pub fn save_file(file_path: String) -> Result<(), Error> {
let mut db_file = OpenOptions::new()
.create(true)
.append(true)
.open(file_path)?;
db_file.write_all(b"some content")?;
Ok(())
}
Run Code Online (Sandbox Code Playgroud) 如果我试试这个:
let vector = vec![1, 2, 3];
let slice = vector[1..2];
Run Code Online (Sandbox Code Playgroud)
我收到编译器错误:
error[E0277]: the trait bound `[{integer}]: std::marker::Sized` is not satisfied
--> src/main.rs:3:9
|
3 | let slice = vector[1..2];
| ^^^^^ ------------ help: consider borrowing here: `&vector[1..2]`
| |
| `[{integer}]` does not have a constant size known at compile-time
|
= help: the trait `std::marker::Sized` is not implemented for `[{integer}]`
= note: all local variables must have a statically known size
Run Code Online (Sandbox Code Playgroud)
我得到了我们需要的,let slice = &vector[1..2]正如编译器所建议的那样.这是有道理的:切片总是 …