PLCommand

Official SPM Swift License Platform

⌘ 从 Swift 运行命令

安装

PLCommand 已部署为 Swift Package Manager。将 Package 安装到项目中。在 swift 清单中将其添加为依赖项。

let package = Package(
    ...
    dependencies: [
        .package(url: "https://github.com/pelagornis/plcommand.git", from: "1.2.5")
    ],
    ...
)

然后从要使用的位置导入 PLCommand。

import Command

文档

此处提供有关版本和 main 的文档

使用

如果您想使用 Bash。

@Command(\.bash) var bashCommand
bashCommand.run("command")

或者如果您想使用 zsh。

@Command(\.zsh) var zshCommand
zshCommand.run("command")

或者如果您想使用 Makefile 命令。

@Command(\.make) var makeCommand
makeCommand.run("command")

别名

为命令创建一个快捷名称。

let git = Alias(executableURL: "/usr/bin/git")
git.run("command")

常用命令

PLCommand 支持常用功能。

支持 Git 命令

@Command(\.git) var git

git.`init`()
git.add()
git.clone(repositoryURL)
git.commit("comment")
git.push()
git.pull(remote: "origin")
git.checkout(branch: "gh-page")

支持 Swift Package 命令

@Command(\.package) var swiftPackage

swiftPackage.create()
swiftPackage.create(type: .executable)
swiftPackage.update()
swiftPackage.generateXcodeproj()
swiftPackage.build()
swiftPackage.test()

支持 Fastlane 命令

@Command(\.fastlane) var fastlane

fastlane.`init`()
fastlane.tests()
fastlane.snapshot()
fastlane.deliver()
fastlane.frameit()
fastlane.run("fastlane command")

支持 Tuist 命令

@Command(\.tuist) var tuist

tuist.build()
tuist.clean()
tuist.fetch()
tuist.edit()
tuist.graph()
tuist.generate()
tuist.migration([])
tuist.scaffold("template", [])
tuist.test()
tuist.run("tuist command")

扩展

PLCommand 更易于扩展。

extension CommandValues {
    var swift: Alias {
        Alias(executableURL: "/usr/bin/swift")
    }
}


// Usage
@Command(\.swift) var swiftCommand

许可

plcommand 基于 MIT 许可。有关更多信息,请参见 LICENSE 文件。