【问题标题】:Anything like gitignore for pulling?像 gitignore 这样的拉动?
【发布时间】:2020-05-12 05:51:13
【问题描述】:

我在存储库中有一些文件(文档、实用程序脚本、我的服务器的私钥等),它们不必在部署中,但为了开发方便,它必须在存储库中。有没有像 .gitignore 这样在拉取时忽略某些文件和文件夹的方法?

【问题讨论】:

  • 不,没有,但也许您会发现这个问题的答案很有用? How to git-pull all but one folder
  • 听起来是一种不寻常的方法。你在哪里拉,为什么不希望文件出现?也许考虑添加一个“编译”步骤来组合一个可以安装的发行版。例如,如果您使用 repo 来托管网站文件,请使用脚本将部署所需的所有内容放在一起。
  • 请注意,git pull 表示运行git fetch,然后运行第二个 Git 命令git fetch 步骤从不接触任何您的工作树文件根本。这是感兴趣的 second Git 命令,所以你的问题应该改写为“有没有办法让 而不是 some files”。您可以选择 merge 或 rebase 作为您的第二个命令......但问题是,仍然没有真正好的方法可以让 git merge 不合并某些文件,或者 git rebase 不 rebase 某些文件。
  • 在您意识到这些文件甚至根本不在 Git 中之前,这一切都没有任何意义。然后,一旦你意识到你的工作树是 yours 并且当你让 Git 弄乱它时 Git 只会弄乱它,并且 git mergegit rebase 都明确要求 Git 弄乱它它,它开始有意义了。
  • 最好将配置和诸如私钥之类的东西放入存储库中。您可以放入“样本”文件,以便初始克隆提供样本,可以将其重命名为真实文件。然后真正的文件永远不会存储在任何提交中,因此 Git 永远不需要弄乱它们。

标签: git github gitignore


【解决方案1】:

据我所知,没有这样的拉动命令。但是您可以自定义编辑器环境以隐藏此类文件。我正在使用 VS 代码,在用户设置中,我刚刚在下面添加了代码,告诉我忽略并隐藏此文件夹和文件。

    "files.exclude": {
        "**/.git": true,
        "**/.svn": true,
        "**/.hg": true,
        "**/CVS": true,
        "**/.DS_Store": true,
        "**/yarn.lock": true,
        "node_modules/": true
    },

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-04-20
    • 2011-01-30
    • 2012-09-23
    • 2013-03-07
    • 2013-08-28
    • 2014-03-31
    • 2011-08-02
    • 1970-01-01
    相关资源
    最近更新 更多