【问题标题】:Duplicate files created when I import a project from git从 git 导入项目时创建的重复文件
【发布时间】:2020-12-20 13:22:02
【问题描述】:

我在 github 上创建了一个 repo,作为我跟踪更改的最后一年项目,并且我有一个 MacBook 可以移动,并且当我在家时也可以在我的工作站上工作;

我在 github 上创建了一个空的 repo,然后将 android 项目从我的工作站推送到 github。工作了一段时间,并在几分钟前从写这篇文章并在我的 macbook 上克隆了该项目,并在几分钟前运行了基本的东西并推送了代码。我在我的 macbook 上选择了该项目,几秒钟后,当 Android Studio 完成“索引”文件时,我看到有 MainActivity2.ktactivity_main2.xml(我没有创建)。我吓坏了,做了一个git status,这表明本地仓库没有任何变化。

然后我在我的 Mac 上关闭了 Android Studio,删除了上述本地 repo 并打开了 Android Studio(作为一种安全措施,我知道我为什么这样做)并且还从最近的标签中删除了该项目。我再次克隆了 repo,现在我拥有了所有(我所知道的 - 因为我是 android studio + kotlin 的新手).kt 和 .xml 文件以及它们的 <file-name-goes-here>2.kt<file-name-goes-here>2.xml

我又做了一个 git status,它向我展示了这个。我不知道为什么要创建重复项。

On branch main
Your branch is up to date with 'origin/main'.

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git restore <file>..." to discard changes in working directory)
    modified:   .idea/gradle.xml

Untracked files:
  (use "git add <file>..." to include in what will be committed)
    app/src/androidTest/java/com/kinkykeys/countmein/ExampleInstrumentedTest 3.kt
    app/src/main/AndroidManifest 2.xml
    app/src/main/java/com/kinkykeys/countmein/MainActivity 2.kt
    app/src/main/java/com/kinkykeys/countmein/disaster_forecast 2.kt
    app/src/main/java/com/kinkykeys/countmein/home 2.kt
    app/src/main/java/com/kinkykeys/countmein/scan 2.kt
    app/src/main/res/drawable-v24/ic_launcher_foreground 3.xml
    app/src/main/res/drawable/ic_launcher_background 3.xml
    app/src/main/res/layout/activity_main 2.xml
    app/src/main/res/layout/disaster_forecast 2.xml
    app/src/main/res/layout/home 2.xml
    app/src/main/res/layout/scan 2.xml
    app/src/main/res/mipmap-anydpi-v26/ic_launcher 3.xml
    app/src/main/res/mipmap-anydpi-v26/ic_launcher_round 3.xml
    app/src/main/res/mipmap-hdpi/ic_launcher 3.png
    app/src/main/res/mipmap-hdpi/ic_launcher_round 3.png
    app/src/main/res/mipmap-mdpi/ic_launcher 3.png
    app/src/main/res/mipmap-mdpi/ic_launcher_round 3.png
    app/src/main/res/mipmap-xhdpi/ic_launcher 3.png
    app/src/main/res/mipmap-xhdpi/ic_launcher_round 3.png
    app/src/main/res/mipmap-xxhdpi/ic_launcher 3.png
    app/src/main/res/mipmap-xxhdpi/ic_launcher_round 3.png
    app/src/main/res/mipmap-xxxhdpi/ic_launcher 3.png
    app/src/main/res/mipmap-xxxhdpi/ic_launcher_round 3.png
    app/src/main/res/values-night/themes 3.xml
    app/src/main/res/values/colors 3.xml
    app/src/main/res/values/strings 3.xml
    app/src/main/res/values/themes 3.xml
    app/src/test/java/com/kinkykeys/countmein/ExampleUnitTest 3.kt

no changes were added to commit (use "git add" and/or "git commit -a")

另外,我刚刚注意到有一些文件还有第三个副本(colors 3.xmlstrings 3.xmlthemes 3.xml

这是link to my github repo,以防我的代码内容有问题,但我希望它与Android Studio有关。

【问题讨论】:

  • 这绝对看起来像某些云同步服务已进入您的存储库。你绝对应该避免这些,因为他们会做这样的事情。

标签: android git android-studio


【解决方案1】:

您的 GitHub 存储库中的代码和文件结构似乎是正确的。我认为这个问题是由于 iCloud 同步引起的。我有两个解决方案。

解决方案 1:

检查您的 Mac 是否将项目目录和文件存储在 iCloud 上。这个问题主要是因为 iCloud 一直在同步文件,这就是为什么以某种方式创建的重复文件是使用递增数字创建的。

检查“桌面和文档文件夹”是否将文档和数据存储在 iCloud 上。更具体地说,检查 iCloud 是否正在存储您的项目文件夹。如果是,则取消选中此选项。

解决方案 2:

另一种解决方案是将.nosync 扩展名添加到您的项目目录中。

例如。 如果您的项目目录名称为MyProject,则将其重命名为MyProject.nosync

【讨论】:

  • 是的,iCloud 同步已打开,但这并没有在我拥有的存储库中导致这种奇怪的行为。我在 ~/Documents 中有几乎所有的存储库,因为下次我设置我的 mac 时,我不需要克隆每个 repo,但是,是的,这似乎是问题所在。我在我的主目录中克隆了它,它现在可以工作了。谢谢。
  • 补充一点,我在特定的仓库中也遇到了这个问题。我有几个工作正常,但一个人不断得到这些重复的文件并搞砸了一切。我将那个从 iCloud 同步中移出,并没有得到更多这些文件。感谢您的问题和解决方案!
猜你喜欢
  • 1970-01-01
  • 2015-08-21
  • 2015-08-02
  • 2012-01-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-31
相关资源
最近更新 更多