【问题标题】:How to locally ignore .git and .gitignore in a svn repo?如何在 svn 存储库中本地忽略 .git 和 .gitignore?
【发布时间】:2014-02-05 00:32:19
【问题描述】:

我有一个 SVN 工作副本(由 TortoiseSVN 管理)。在那个工作副本中,我使用 git 进行本地版本控制和分支。 当然,我想隐藏svn的.git目录和.gitignore文件。

但是,忽略它们意味着将属性添加到不再是本地的存储库中。 我不希望这样(因为有很多人共享这个 repo),因为它很烦人,因为它建议在每次提交到 repo 时提交。

我发现(通过question)忽略提交列表的可能性。但是(至少在 TortoiseSVN 中)它只适用于文件: 如果我检查修改,repo 会显示修改的属性。但是,我无法将其添加到提交时忽略,因为上下文菜单条目只是不显示。

那么,有没有办法(例如通过命令行?)将 repo 添加到 ignore-on-commit?

还有其他方法可以隐藏/忽略 svn 的 .git 和 .gitignore 吗?

【问题讨论】:

    标签: svn version-control tortoisesvn


    【解决方案1】:

    使用global-ignores 配置选项。这在SVN Book's Ignoring Unversioned Items section 中有记录。

    此设置将影响您的所有 Subversion 客户端和工作副本,但我怀疑在所有结帐时忽略 .git 和 .gitignore 对您来说不是问题。

    直接编辑配置文件

    在 Unix 上,该设置将应用于 ~/.subversion/config,而在 Windows 上则为 %APPDATA%\Subversion\config(尽管它也可以存储在注册表中,see the documentation in the SVN Book about that)。

    默认会被这样注释掉:

    ### Set global-ignores to a set of whitespace-delimited globs
    ### which Subversion will ignore in its 'status' output, and
    ### while importing or adding files and directories.
    ### '*' matches leading dots, e.g. '*.rej' matches '.foo.rej'.
    # global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo
    #   *.rej *~ #*# .#* .*.swp .DS_Store
    

    您只需取消注释这些行并将.git.gitignore 添加到它们。

    TortoiseSVN 用户界面

    在您的情况下,您使用的是 TortoiseSVN,因此您可以避免直接编辑文件并使用 TortoiseSVN 中的设置。在 General 部分下有一个 Subversion 块和一个标记为 Global ignore模式。只需将.git.gitignore 添加到模式列表中。这在 Ignoring files and directories 部分的全局忽略块中有所介绍,更具体地说,在 TortoiseSVN 文档的 Settings section 中的 全局忽略模式 设置的详细信息中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-12
      • 2013-02-28
      • 1970-01-01
      • 2012-07-12
      • 1970-01-01
      • 2020-10-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多