2015-03-25 69 views
2

我使用Rstudio 0.99.335和git 1.9.5。我的本地副本中有许多未跟踪的文件,包括中间结果,报告等。有时,很难找到要更改的文件。如何在RStudio中使用隐藏未跟踪的git文件?

gitignore可以用来忽略一些文件。但是,它可能不适合我。由于我有成千上万的没有特定模式的未跟踪文件,例如特定文件夹,扩展名。

我刚刚从svn迁移到git为我自己的工作存储10年的历史。之前,我在我的Windows笔记本电脑中使用tsvn作为客户端,在我的RStudio服务器(ubuntu)中使用了svn命令。迁移之后,我尝试使用RStudio的内置git功能作为我的RStudio服务器的git客户端。

我的工作文件夹没有仔细管理和跟踪和未跟踪的文件夹和文件(> 100K)混合。

例如,

  • * .R。应该被追踪。但有时我为特定的目标编写代码,并没有跟踪它们,因为它们只使用了一次。
  • * .csv:我通常使用csv文件来存储输入和输出。输入应该被跟踪,但是输出不应该跟踪,因为我可以重新生成它们。
  • .docx:我应该跟踪自己的写作手稿。不应该对RMarkdown生成的报告进行跟踪。

由于我的资料库历史悠久,所有文件都可以是任何文件名并存储在任何地方。

有没有办法在RStudio中隐藏未跟踪文件?

感谢您的任何建议。

+0

了解''gitignore''文件''.gitignore'' – randomusername 2015-03-25 04:19:38

+0

感谢您的意见。但在我的情况下,很难使用gitignore。编辑我的问题来澄清。 – Bangyou 2015-03-25 04:24:06

+1

你能给出一些很难与'gitignore'匹配的文件名的例子吗? – jcm 2015-03-25 04:32:14

回答

1

我还没有使用Rstudio和一般不使用的IDE,但这里有一些事情你可以做些什么来帮助gitignore

* .R。应该被追踪。但有时我为特定的目标编写代码,并没有跟踪它们,因为它们只使用了一次。

当我写“秒杀”或临时代码我要么把他们那些已经被跟踪或tmp/文件,这是在我的gitginore

* .csv:我通常使用csv文件来存储输入和输出。输入应该被跟踪,但是输出不应该跟踪,因为我可以重新生成它们。

.docx:我应该跟踪自己的写作手稿。不应该对RMarkdown生成的报告进行跟踪。

以上两个看起来很相似:跟踪文件,你自己写与不跟踪同一类型/扩展IDE生成的文件。也许你可以设置Rstudio将生成的文件放入特定的目录,然后将这些目录放入gitignore

或者,您可以为手写与生成的文件命名约定,以便Git区分两者。

我知道以上只是一些例子,还有其他文件需要处理,但您也可以将这些想法扩展到这些文件。

+0

感谢您的建议。我可能会写信给RStudio团队,以检查他们是否想添加一个关于将未跟踪文件隐藏到其git客户端的新功能。 – Bangyou 2015-03-25 05:23:11

1

有我的本地副本许多未跟踪文件,包括中间结果,报告等

如果你不关心不够跟踪你的仓库这些文件,为什么让他们呢?一旦完成了中间结果并转到最终结果,为什么不删除这些中间文件呢?您可以摆脱的每个文件都会稍微减少问题。

有时,很难找到要更改的文件。

听起来好像Rstudio和git不是问题。使用文件系统来组织所有这些文件。如果您将所有与给定项目相关的源文件保存在一起,但与您不关心的文件分开,那么您将无法识别需要跟踪的文件。

我刚刚从svn迁移到git为我自己的工作存储10年的历史。

意识到您不需要将自己限制为所有文件的单个存储库。为每个项目创建一个回购。这将减少每个回购中的文件数量,并且应该会显着减少问题。使用单独的,以项目为中心的存储库会限制损害,如果你真的搞砸了一个回购,它可能会有性能优势。它还会使其他人更容易合作 - 您可以与其他人共享一个项目的回购,而无需分享您一生的工作。

我的工作文件夹没有仔细管理和跟踪和未跟踪的文件夹和文件(> 100K)混合。

如果你有一个包含100,000多个文件的目录混合在一起,那么没有Rstudio或git功能可以解决你的组织问题。你需要一个处理混乱的策略。这里有几点想法:

  • 花一个月时间浏览所有这些文件并确定你关心的那些文件。
  • 按照原样制作该目录的备份副本(可能是三个)。然后开始新的一套新的目录和一个计划,以保持组织前进。当你需要以前曾经工作过的东西时,将其复制到新的工作区中。随着时间的推移,您关心的文件将被移入新的,更好组织的存储库(或存储库)。旧目录中剩下的东西将被定义为你不需要的东西。

* .R。应该被追踪。但有时我为特定的目标编写代码,并没有跟踪它们,因为它们只使用了一次。

您编写的所有代码仅在使用第二次之前使用一次。很难预测未来,所以即使您确信不会再使用它,它也可能是一个很好的计划来跟踪您的所有代码。或者,如果你是肯定你不需要它,删除它。

是否有办法在RStudio中隐藏未跟踪文件?

似乎没有使Rstudio隐藏未跟踪文件的命令,但可以将未跟踪文件置于子目录中。至少在我的Mac上,如果该目录中的所有文件都未被跟踪,则Rstudio的git面板不会显示目录的内容。

+0

感谢您的好建议。我只是从svn迁移到git。我的存储库有很长的历史,我更愿意将所有历史保存在git存储库中。无论如何,我可能需要一段时间才能使用我的新git。 – Bangyou 2015-03-25 05:45:33

+0

虽然历史记录可能不包含未跟踪文件,对吧?这几乎是一个文件首先被解开的意思。 – Caleb 2015-03-25 05:49:05

相关问题