gpt4 book ai didi

ruby - 基本的 ruby​​ 脚本没有按预期工作

转载 作者:数据小太阳 更新时间:2023-10-29 08:33:48 24 4
gpt4 key购买 nike

我正在尝试编写一个简单的 ruby​​ 脚本来更新我的 GIT 工作目录。该脚本产生错误,我无法弄清楚原因。我有以下功能(我知道可以写得更简单,但我尝试的任何东西似乎都不起作用)

def performCommandInDir(command, dir)
old_dir = Dir.pwd
Dir.chdir(dir)
system(command)
Dir.chdir(old_dir)
end

我是这样调用它的

performCommandInDir("git svn rebase", repo[:name])

当我运行脚本时,我看到以下错误:

fatal: /usr/libexec/git-core/git-rebase cannot be used without a working tree.
rebase refs/remotes/git-svn: command returned error: 1

我已验证 repo[:name] 是我的 GIT 存储库的正确路径。我可以手动将它的值粘贴到 shell 中,git 命令工作正常。

这里可能发生了什么?

感谢帮助

最佳答案

不是你问题的确切答案,但你可以将 --git-dir--work-tree 传递给 git 命令来告诉它在哪里操作,这可能对你有帮助。

我假设这不是一个裸 git 存储库,因为你对它进行了 rebase,所以这意味着 git 目录在 .git 中:

system("git --git-dir=#{repo[:name]}/.git --work-tree=#{repo[:name]} svn rebase")

关于ruby - 基本的 ruby​​ 脚本没有按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8796561/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com