【问题标题】:SVN Ignore files in Android StudioSVN 忽略 Android Studio 中的文件
【发布时间】:2014-06-25 12:54:39
【问题描述】:

我试图忽略项目中的构建文件夹,我尝试将svn:ignore 属性递归添加到它,添加到Settings > Version Control > Ignore Files,从Subversion 下的右键菜单中我无法选择忽略选项,它是灰色的。在我完成所有这些后,当我在项目上选择提交目录时,构建文件夹仍然会出现。使文件夹被忽略的正确方法是什么?

【问题讨论】:

  • 您尝试忽略的项目是否已经版本化?
  • 我不肯定,但我相信,该项目是使用 SVN 的结帐创建的。
  • 如果这些项目已经由存储库管理,您需要svn delete 他们才能忽略它们。如果它们不是由存储库管理(并且它们只存在于本地),那么您没有正确设置svn:ignore
  • @TomHart 有帮助吗?我的构建文件夹没有版本控制,并且在忽略属性中,但每次我签入时,AS 都会询问我有关构建文件夹的信息。
  • @ErikB 我们最终在工作中抓到了应用程序项目,所以在那之前我从来没有找到适合我的合适的修复程序。

标签: svn intellij-idea android-studio


【解决方案1】:

我也是 Android Studio 的新手。我试过这种方法不使用插件或命令行。仅使用 Android Studio 界面(版本 1.5.1)。

  • 正如 Kenneth Evans 的好回答所说,第一步是声明所有 在文件 > 设置 > 版本控制 > 中必须忽略的资源 忽略的文件。这些资源是:
    掩码:*.iws(选择忽略所有文件匹配选项以添加此模式)
    目录:.gradle
    目录:.idea/libraries/
    文件:.idea/workspace.xml
    目录:build/
    文件:local.properties
    目录:app/build/(这必须适用于您项目的每个模块)
    掩码:*.iml
    文件:.DS_Store
  • 下一步是将这些资源(文件和文件夹)还原到它们的 存储库中的初始状态

我有一个包含多个模块的项目,每个模块都有一个构建文件夹。如果是这种情况,可以避免浪费太多时间并尝试一个模块。测试此过程是否成功并应用于所有这些。
首先,您会看到绿色的 build 文件夹,因为它已附加到 svn 存储库。右键单击它并选择 Subversion - Revert。此过程无关紧要,因为此文件夹中的所有文件都将在您下次构建项目时重新构建。如果您敢,可以标记所有必须忽略才能恢复的文件夹。还原完成后,文件夹名称将显示为棕色

  • 提交项目 - 这会更新哪些资源必须 提交时考虑在内。这需要一段时间,因为所有 之前标记为包含在提交过程中的文件,现在是 未被标记。当这个漫长的过程完成后,会显示一个对话框,其中 未显示所有排除的资源或显示“无更改”的消息 而是

现在 local.properties 文件可以右键单击并选择 Subversion > 忽略 local.properties
编译您的项目并尝试提交 - 在任何源上进行一些更改以强制编译和构建您的项目。
最后从项目提交目录(右键单击项目并选择 Subversion - 提交目录...)。这最后一步允许现在进行测试,它确实更快,因为这些排除的资源不会出现在提交接受对话框中

【讨论】:

【解决方案2】:

当您将文件或文件夹添加到 VCS 时,它们会添加到默认更改列表中。将您希望忽略的文件和文件夹移动到不同的变更列表(可能称为忽略)。最后,只提交 Default Changelist,忽略被忽略的 Changelist。

【讨论】:

  • 这对我有用,谢谢! “VCS” => “提交更改” => 右键单击​​要忽略的文件夹/文件并选择“移动到另一个更改列表”。
  • 这不是 svn:ignore,实际上是隐藏这些文件,但现在对我来说已经足够了,谢谢,你让我很开心
  • @SimonKarmy - 我想半条面包总比没有好:-)不客气
  • 谢谢。处理忽略文件/文件夹的简单、干净和简单的方法。
【解决方案3】:

我遇到了同样的问题。存储库中没有任何内容,直到我在项目上共享目录。然后它在存储库中为项目创建了文件夹。我在设置|版本控制|Subversion中输入了以下内容:

  • 文件:.idea/workspace.xml
  • 文件:.gradle
  • 目录:build/
  • 掩码:*.iws
  • 目录:.idea/libraries/
  • 目录:app/build/
  • 文件:local.properties

它并没有忽略更改视图中或提交时的任何内容。 Subversion|Ignore 项没有像上面那样工作。

我通过在https://plugins.jetbrains.com/plugin/6529?pr=idea 安装 SVN Disconnect 插件并运行它来或多或少地工作。这清理了一切,我重新开始。这次它忽略了目录:项目,但没有忽略文件:项目。除了这个故障,它似乎正在工作。 Subversion|Ignore 或 Subversion|Remove from ignore list 的菜单项现在似乎按预期工作(但忽略不会发生)。

我安装了 Tortoise SVN,它不会像在 Eclipse 项目中那样在 Windows 资源管理器中将目录标记为位于 SVN 中。但是,存储库浏览器会显示文件。

我是 Android Studio 的新手。 Subversion 实现似乎有问题,只有 1.7。我没有看到 Android Studio 或 IntelliJ 的这个错误。我现在会继续尝试,如果有更多问题,请再次清理它,并从 Android Studio 外部使用 Tortoise SVN 重新开始。

我知道这不是一个完整的答案,但也许会有所帮助。

【讨论】:

  • 我在 AS 1.1 中遇到了同样的问题,SVN 忽略文件不起作用...:S
【解决方案4】:

对我有用的创意解决方案: 使用 'git svn' 在本地使用 git 并推送到 svn

可悲的是,这样做花费的时间比我应该做的要长,因为之前的变更集中存在一些 svn 损坏,git 无法通过。一旦进入 git land,ignores 周围的一切都开始按预期工作。可能是svn插件的一个bug。

【讨论】:

    【解决方案5】:

    我设法通过使用控制台忽略了库文件夹:

    • cd 到您项目的 .idea
    • svn propset svn:ignore libraries .

    此外,我必须通过简单地还原库文件夹中的所有文件、关闭 Android Studio 并重新打开项目来“取消添加”文件。

    文件现在在版本控制视图中被忽略。

    【讨论】:

      【解决方案6】:

      在 Android Studio 界面中,我尝试将属性 svn:ignore 设置为我想忽略的文件的值 true。出于某种原因,它对我不起作用。 因此,对我来说,另一种快速解决方法是:将这些文件移动到新的更改列表中。当您修改文件时,该文件将添加到“默认”更改列表中。因此,每次打开提交窗口时,我都会看到“默认”更改列表(其中只有我想要的文件)。

      【讨论】:

        【解决方案7】:

        我个人使用 TortoiseSVN 来管理忽略列表和其他更高级的东西。

        对我来说,这是更可靠的方法,但我当然仍在 Android Studio 中使用 VCS,因为它具有许多很酷的功能,例如有关传入更改的信息。

        【讨论】:

        • 如何访问 TortoiseSVN 中的忽略列表?在 Windows 中,它的文件资源管理器导航到工作目录,右键单击,选择属性,Subversion 选项卡,属性,新建,然后输入 svn:ignore,然后输入所有忽略。
        【解决方案8】:

        回到 Eclipse - 它对开发人员更加友好

        【讨论】:

        • 是的,抱歉让您有点沮丧。
        猜你喜欢
        • 2012-06-04
        • 1970-01-01
        • 2012-03-15
        • 2011-04-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-06-15
        相关资源
        最近更新 更多