RStudio自述文件,Rmd和README.md都应暂存,使用“git commit --no-verify”覆盖此检查

xzlaal3s  于 2023-02-27  发布在  Git
关注(0)|答案(2)|浏览(167)

我使用的是RStudio,其中有README.rmd和www.example.com文件,但是,当我只在README.rmd中做了修改,并希望提交并将其推送到GIT时,会出现以下情况:README.md file. However, when I have only changed in the README.Rmd and want to commit and push it to GIT I get this:
RStudio自述文件。Rmd和www.example.com都应暂存,使用"git commit--no-verify"覆盖此检查README.md should be both staged use 'git commit --no-verify' to override this check
我应该在哪里补充:"git提交--不验证"?
和/或如何避免此消息?

2ledvvac

2ledvvac1#

编辑README.Rmd文件时,README.md文件不会自动同步。由于GitHub会显示README.md文件(而不是README.Rmd文件),因此在将README.md文件推送到GitHub之前,需要检查您是否构建了该文件。如果不这样做,您在README.Rmd文件中所做的任何更改都不会显示在仓库中。
我建议始终使用以下工作流程:
1.编辑README.Rmd文件
1.通过在R控制台中运行devtools::build_readme()来构建README.md文件
1.提交您的README.RmdREADME.md
这样做不应该抛出任何警告,一切都将工作的方式,你可能想要的。

k97glaaz

k97glaaz2#

碰到这个问题的人可能想看看relevant issue of the usethis package中的争论。
简单地说,这是由于使用usethis::use_readme_rmd()造成的,它在.git/hooks/pre-commit中设置了一个pre-commit钩子。这个钩子确保readme.Rmdreadme.md同时更新。如果只有一个发生了变化,那么这个问题的标题中包含的错误消息就会出现。
例如,如果您的自述文件包含一些摘要统计信息(可以在项目更新时重新构建)或一些随机数据,那么这可能会很烦人。
临时解决方案是按照消息所述执行,即转到终端并键入:
git commit --no-verify -m "my commit message"
如果你想完全摆脱这种行为,你应该删除.git/hooks/pre-commit文件。
在R控制台中,您可以使用以下命令实现此目的:
file.remove(".git/hooks/pre-commit")

相关问题