[git-index] allow to create trackers for added files
authorJulia Beliaeva <Julia.Beliaeva@jetbrains.com>
Mon, 10 Aug 2020 18:48:26 +0000 (21:48 +0300)
committerintellij-monorepo-bot <intellij-monorepo-bot-no-reply@jetbrains.com>
Wed, 12 Aug 2020 17:23:01 +0000 (17:23 +0000)
GitOrigin-RevId: 12263352b8c4ce7ae6fc2861768b0d0f8a4d4383

plugins/git4idea/src/git4idea/index/GitStageLineStatusTrackerProvider.kt

index 8e0136eb6dd882ab28dcdb3a54f6760e275d8762..778593779e731b91000bf28ead42230a1c580015 100644 (file)
@@ -43,7 +43,6 @@ class GitStageLineStatusTrackerProvider : LineStatusTrackerContentLoader {
     val status = GitStageTracker.getInstance(project).status(file) ?: return null
 
     if (!status.isTracked() ||
-        !status.has(ContentVersion.HEAD) ||
         !status.has(ContentVersion.STAGED) ||
         !status.has(ContentVersion.LOCAL)) return null
 
@@ -80,6 +79,8 @@ class GitStageLineStatusTrackerProvider : LineStatusTrackerContentLoader {
     val indexFile = indexFileCache.get(repository.root, status.path(ContentVersion.STAGED))
     val indexDocument = runReadAction { FileDocumentManager.getInstance().getDocument(indexFile) } ?: return null
 
+    if (!status.has(ContentVersion.HEAD)) return StagedTrackerContent("", indexDocument)
+
     try {
       val bytes = GitFileUtils.getFileContent(project, repository.root, GitUtil.HEAD,
                                               VcsFileUtil.relativePath(repository.root, status.path(ContentVersion.HEAD)))