Unity中创建的文件不会自动添加到git(Rider)中

问题描述 投票:0回答:2

当我在Unity编辑器中创建文件或将已创建的文件移动到另一个文件夹等时 - 默认情况下这些文件不会添加到git中。我必须在Rider IDE中手动将它们添加到git中。当我想重构项目结构或添加一些预制件和资产等时,这变得非常令人讨厌。

在Rider Settings - > Version Control - > Confirmation中我尝试了“silent:and”show options ...“选项,但无济于事。另外如果我在Rider项目结构中创建文件它将默认添加。

gitignore文件:

# This .gitignore file should be placed at the root of your Unity project directory

/[Ll]ibrary/
/[Tt]emp/
/[Oo]bj/
/[Bb]uild/
/[Bb]uilds/
/[Ll]ogs/

# Never ignore Asset meta data
!/[Aa]ssets/**/*.meta

# Uncomment this line if you wish to ignore the asset store tools plugin
# /[Aa]ssets/AssetStoreTools*

# TextMesh Pro files
[Aa]ssets/TextMesh*Pro/

# Visual Studio cache directory
.vs/

# Gradle cache directory
.gradle/

# Autogenerated VS/MD/Consulo solution and project files
ExportedObj/
.consulo/
*.csproj
*.unityproj
*.sln
*.suo
*.tmp
*.user
*.userprefs
*.pidb
*.booproj
*.svd
*.pdb
*.mdb
*.opendb
*.VC.db

# Unity3D generated meta files
*.pidb.meta
*.pdb.meta
*.mdb.meta

# Unity3D generated file on crash reports
sysinfo.txt

# Builds
*.apk
*.unitypackage

# Crashlytics generated file
crashlytics-build.properties

git status命令(.meta文件被添加到git,当我标记整个文件夹以添加到git时出现此问题):

        new file:   Assets/Scripts/CatLikeLegacy.meta
        new file:   Assets/Scripts/CatLikeLegacy/EdgeVertices.cs.meta
        new file:   Assets/Scripts/CatLikeLegacy/FireTrail.cs.meta


... etc. meta files

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

        .idea/
        .vscode/
        Assets/Build.meta
        Assets/Build/provinces.png.meta
        Assets/Build/provincesReference.png.meta
        Assets/Materials.meta

...etc ignored files .meta in common

当文件创建或移动时,git应该自动跟踪该文件。

UPD:尝试在Unity中创建新的清洁项目并从Rider添加git系统 - 仍然存在这个问题,Rider不会自动跟踪新文件(标记为红色)。

c# git unity3d rider
2个回答
1
投票

我已经将Unity与Rider一起使用,但我目前还不知道使用Rider-native功能的解决方案。

但您可以通过使用CLI(命令行界面)并一次性添加所有文件(而不是逐个添加)来解决此问题:

git add --all

这确实'需要'你有一个体面的.gitignore所以你不包括膨胀的Unity和Rider文件。

这是一个例子:.gitignore

您可能需要根据自己的需要对其进行一些自定义;如果您使用git add --all命令使用git status,您可以轻松检查将包含哪些文件,这将为您提供必要的信息,以确定您需要添加到.gitignore的排除模式


1
投票

正如我从https://youtrack.jetbrains.com/issue/IDEA-52058 thx到@evolutionxbox所看到的,JetBrains产品尚未实现此功能 - 这使得这个IDE中的工作流非常烦人,无法统一。不幸。

© www.soinside.com 2019 - 2024. All rights reserved.