要导出git修订版,我使用命令:
git archive master | tar -x -C /Users/me/Desktop/export/
在终端上工作正常。
将此与Process()
一起使用 let task = Process()
task.currentDirectoryPath = "/Users/me/Documents/Project/HelpMe/"
task.launchPath = "/usr/bin/git"
task.arguments = ["archive", "master", "|", "tar", "-x", "-C", "/Users/me/Desktop/export/"]
let pipe = Pipe()
task.standardOutput = pipe
task.standardError = pipe
task.launch()
let data = pipe.fileHandleForReading.readDataToEndOfFile()
let output = String(data: data, encoding: .utf8)
task.waitUntilExit()
返回错误
错误:未知开关`x \' \ nusage:git archive [] [...] \ n或:git archive --list \ n或:git archive --remote [--exec] [ ] [...] \ n或:git archive --remote [--exec] --list \ n \ n - 格式化存档格式\ n --prefix将前缀添加到存档\ n -o中的每个路径名, --output将存档写入此文件\ n --worktree-attributes \ n读取工作目录中的.gitattributes \ n -v, - verbose报告stderr上的存档文件\ n -0仅存储\ n -1压缩更快\ n -9压缩更好\ n \ n -l, - list list支持的归档格式\ n \ n - 远程从远程存储库检索存档\ n --exec path to remote git-upload-archive命令
使用一个参数
task.arguments = ["archive master | tar -x -C /Users/me/Desktop/export/"]
返回错误
git:\'归档大师| tar -x -C / Users / me / Desktop / export / \'不是git命令。请参阅\' git --help \'。
问题是|
字符。 Process()
使用单引号启动所有参数
git 'archive' 'master' '|' 'tar' '-x' '-C' '/Users/me/Desktop/export/'
如果我在终端中使用此功能并删除|
周围的单引号,一切正常。
提前多多感谢
答案 0 :(得分:0)
= SUM( B2:B7 ) = COUNT( A1:A7 ) - 1
ExportGit
#import "ExportGit.h"
- (void)exportGit {
system("cd /Users/me/Documents/Projekte/HelpMe && git archive master | tar -x -C /Users/me/Desktop/export/");
}
简历:它应该适用于Swift let exportGit = ExportGit()
exportGit.exportgit();
和Process()
/ standardOutput
,但几天后我尝试使用standardInput
,这花了我3分钟让它工作