同时禁止创建.Rhistory和DS_Store

时间:2017-01-28 01:31:44

标签: r git macos github

切换到新的Mac(macOS Sierra)并重新克隆我的所有GitHub存储库后,我开始遇到一个新问题。每当我进行更改并保存R脚本,然后运行:

git status

## Untracked files:
##   (use "git add <file>..." to include in what will be committed)
## .DS_Store
## .Rhistory

.DS_Store.Rhistory出现。

问题:在将R脚本提交给GitHub时,有没有办法停止和/或忽略(例如通过.gitignore,见下文)这些文件?

我理解可能会问类似的问题,我决定仍然提出这个问题,因为我真的想确保我在第一时间得到正确的设置,特别是如果其他人之前遇到过类似的问题。如果你有办法和/或参考如何解决这个高度具体的问题 - 这可能需要bash终端,R,以及操作系统的组合

2 个答案:

答案 0 :(得分:1)

我找到了几个可以导致潜在解决方案的相关参考文献:

  1. Mac OS X v10.4 and later: How to prevent .DS_Store file creation over network connections,只是要求用户在终端中运行以下行以停止生成.DS_Store个文件:

    默认写入com.apple.desktopservices DSDontWriteNetworkStores true

  2. r - Disabling saving history。这篇早期文章提供了有关如何在Windows上禁用.Rhistory文件创建的说明。

  3. Remove .DS_Store files from a Git repository使用.gitignore。我想可以对.Rhistory

  4. 做同样的事情

    但是,如果您有更好的解决方案,请与社区分享!

答案 1 :(得分:1)

最快最简单的方法是将.DS_Store.Rhistory添加到您的全局gitignore文件中。

Here是如何做到的,简而言之:打开或创建(如果还没有)~/.gitignore_global并添加.DS_Store.Rhistory两条新线。

如果您的存储库已包含任何不需要的文件,请使用git rm删除它们(link)。