登录
首页 >  Golang >  Go问答

Git何时才算完成操作?

来源:stackoverflow

时间:2024-03-13 09:36:26 404浏览 收藏

今天golang学习网给大家带来了《Git何时才算完成操作?》,其中涉及到的知识点包括等等,无论你是小白还是老手,都适合看一看哦~有好的建议也欢迎大家在评论留言,若是看完有所收获,也希望大家能多多点赞支持呀!一起加油学习~

问题内容

我在 go 中有一个实用程序,它通过 os/exec 运行提交签出,然后对提交中的文件执行一些操作。

我怀疑目前该命令返回其返回代码:

_, err := exec.Command("git", "-C", sourceDir, "checkout", hash).Output()

文件夹中的整个文件树都是最新的,我可以对文件执行任何我想要的操作,而无需等待某些操作在后台完成。

如果它是一个非常大的存储库,其中一个提交与另一个提交有很大不同,并且从一个提交切换到另一个提交时需要时间来同步已删除/添加/修改的文件怎么办?

我可以在 git checkout 返回 0 之后立即运行我的操作吗?


解决方案


git checkout 在结账完成(或失败)之前不会退出。

关于后台 auto-gc 的注释在这里并不是特别相关,因为 auto-gc 与结账是否完成无关。就此而言,git checkout 不会运行 git gc --auto:没有意义,因为 git checkout 不会创建新的 Git 对象。调用 git gc --auto (截至 2.18 左右)的当前合理列表是:

  • git am
  • git 提交
  • git fetch
  • git merge
  • git receive-pack(服务器)
  • git rebase

好了,本文到此结束,带大家了解了《Git何时才算完成操作?》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>