使用GIT面板在RStudio中提交大量文件

6l7fqoea  于 2022-11-20  发布在  Git
关注(0)|答案(2)|浏览(153)

在RStudio中,如果你正在处理一个包含大量文件的目录,并且你想提交并将最近的更改(你对所有文件所做的更改)推送到仓库中,GUI Git组件会变得非常慢,几乎无法工作。

i34xakig

i34xakig1#

当然,您可以忽略GUI,一直使用命令行Git,但如果您不想这样做的话,快速跳转到命令行Git可以暂时解决这个问题。
我找到的临时解决方案如下:
1.在RStudio中,点击GIT面板上的蓝色齿轮图标
1.选择Shell(将弹出一个终端窗口!)
1.在终端中编写add和commit命令:
{**注意:**以下命令将提交对所有文件得更改!您可能需要使用适合您得情况得命令!}

git add -A && git commit -m 'staging all files'

1.现在你可以回到GUI Git,点击push按钮。你在终端窗口暂存的所有文件都将被推送到你的仓库。

6ju8rftf

6ju8rftf2#

我今天的解决方法是...
1.在我的RStudio项目中创建一个man 1/目录(在我做了一些导致它再次挂起的事情之后,强制关闭并重新启动RStudio几次),
1.包括man1/in.gitignore,
1.把人身上所有东西都移到人身上,
1.删除存储库中的.git/index.lock文件,
1.在RStudio上做一些无意义的事情,直到它的响应速度足以从man/提交文件,
1.拉和推,使远程主电源再次完全同步
1.将一些文件从man 1/复制到man/,提交这些
1.重复步骤6和7并冲洗,直到没有任何残留物留在man 1/
1.删除man 1/及其在.gitignore中的条目
我上面的方法并不是万能的...例如,您可能会因为一个过大的文件而遇到RStudio“diff is too large”的问题,而不是如果你试图从一个文件中提交一组巨大的差异集...你应该把这个文件包含在你的.gitignore中,而不是期望它是由git版本控制的。另外,如果你因为同时提交“太多”文件而锁定了RStudio的Git接口,我认为你的第一个调用端口应该是一次提交一个目录(但一定要确保在每次提交后进行push & pull)。
而且......我不会抱怨RStudio与git交互的缺陷!
相反,我将以一些荣誉作为结束。在使用RStudio几天之后,我发现它比我记忆中的90年代早期通过emacs在S上进行黑客攻击要容易得多。RStudio处理几乎所有的事情(特别是ROxygen文档工作流),而我本月早些时候一直在努力使emacs/eSS完全运行。
我也对R的发展留下了深刻的印象,自从我上一次看到它--大约20年前!- )但我很欣赏它如何保持了与S的真正奇异和原始语义的兼容性,同时允许它的高级用户(这肯定永远不会包括我!)写得富有表现力,优雅,并在简洁和APL及其同类的只写字母汤之间取得适当的平衡(https://en.wikipedia.org/wiki/Write-only_language

相关问题