Commit 50175b98 authored by Julia Beliaeva's avatar Julia Beliaeva Committed by intellij-monorepo-bot
Browse files

[git-index] implement action for staging untracked files without content

IDEA-199239

GitOrigin-RevId: 8a1208c176aa50875de62e07540384a660dbe893
parent a726450e
Showing with 17 additions and 0 deletions
+17 -0
...@@ -336,6 +336,7 @@ ...@@ -336,6 +336,7 @@
<add-to-group group-id="VcsNavBarToolbarActions" anchor="after" relative-to-action="CheckinProject"/> <add-to-group group-id="VcsNavBarToolbarActions" anchor="after" relative-to-action="CheckinProject"/>
</action> </action>
<action id="Git.Stage.Add" class="git4idea.index.actions.GitAddAction" use-shortcut-of="ChangesView.AddUnversioned"/> <action id="Git.Stage.Add" class="git4idea.index.actions.GitAddAction" use-shortcut-of="ChangesView.AddUnversioned"/>
<action id="Git.Stage.Add.No.Content" class="git4idea.index.actions.GitAddWithoutContent"/>
<action id="Git.Stage.Reset" class="git4idea.index.actions.GitResetAction" use-shortcut-of="ChangesView.Revert"/> <action id="Git.Stage.Reset" class="git4idea.index.actions.GitResetAction" use-shortcut-of="ChangesView.Revert"/>
<action id="Git.Stage.Revert" class="git4idea.index.actions.GitRevertAction" use-shortcut-of="ChangesView.Revert"/> <action id="Git.Stage.Revert" class="git4idea.index.actions.GitRevertAction" use-shortcut-of="ChangesView.Revert"/>
<action id="Git.Stage.AcceptTheirs" class="git4idea.index.actions.GitStageAcceptTheirsAction"/> <action id="Git.Stage.AcceptTheirs" class="git4idea.index.actions.GitStageAcceptTheirsAction"/>
...@@ -379,6 +380,7 @@ ...@@ -379,6 +380,7 @@
<reference id="Git.Stage.AcceptTheirs"/> <reference id="Git.Stage.AcceptTheirs"/>
<reference id="Git.Stage.AcceptYours"/> <reference id="Git.Stage.AcceptYours"/>
<reference id="Git.Stage.Add"/> <reference id="Git.Stage.Add"/>
<reference id="Git.Stage.Add.No.Content"/>
<reference id="Git.Stage.Reset"/> <reference id="Git.Stage.Reset"/>
<reference id="Git.Stage.Revert"/> <reference id="Git.Stage.Revert"/>
<reference id="$Delete"/> <reference id="$Delete"/>
......
...@@ -825,6 +825,7 @@ stage.loading.status=Loading changes\u2026 ...@@ -825,6 +825,7 @@ stage.loading.status=Loading changes\u2026
stage.add.action.text=Stage stage.add.action.text=Stage
stage.add.process=Staging Files\u2026 stage.add.process=Staging Files\u2026
stage.add.error.title=Failed to Stage Files stage.add.error.title=Failed to Stage Files
stage.add.no.content.action.text=Stage Without Content
stage.reset.action.text=Unstage stage.reset.action.text=Unstage
stage.reset.process=Unstaging Files\u2026 stage.reset.process=Unstaging Files\u2026
stage.reset.error.title=Failed to Unstage Files stage.reset.error.title=Failed to Unstage Files
......
...@@ -43,6 +43,19 @@ object GitAddOperation : StagingAreaOperation { ...@@ -43,6 +43,19 @@ object GitAddOperation : StagingAreaOperation {
} }
} }
object GitAddWithoutContentOperation : StagingAreaOperation {
override val actionText get() = GitBundle.messagePointer("stage.add.no.content.action.text")
override val progressTitle get() = GitBundle.message("stage.add.process")
override val icon = null
override val errorMessage: String get() = GitBundle.message("stage.add.error.title")
override fun matches(statusNode: GitFileStatusNode) = statusNode.kind == NodeKind.UNTRACKED
override fun processPaths(project: Project, root: VirtualFile, nodes: List<GitFileStatusNode>) {
GitFileUtils.addPathsToIndex(project, root, nodes.map { it.filePath })
}
}
object GitResetOperation : StagingAreaOperation { object GitResetOperation : StagingAreaOperation {
override val actionText get() = GitBundle.messagePointer("stage.reset.action.text") override val actionText get() = GitBundle.messagePointer("stage.reset.action.text")
override val progressTitle get() = GitBundle.message("stage.reset.process") override val progressTitle get() = GitBundle.message("stage.reset.process")
......
...@@ -20,6 +20,7 @@ import git4idea.repo.GitRepository ...@@ -20,6 +20,7 @@ import git4idea.repo.GitRepository
import git4idea.repo.GitRepositoryManager import git4idea.repo.GitRepositoryManager
class GitAddAction : StagingAreaOperationAction(GitAddOperation) class GitAddAction : StagingAreaOperationAction(GitAddOperation)
class GitAddWithoutContent : StagingAreaOperationAction(GitAddWithoutContentOperation)
class GitResetAction : StagingAreaOperationAction(GitResetOperation) class GitResetAction : StagingAreaOperationAction(GitResetOperation)
class GitRevertAction : StagingAreaOperationAction(GitRevertOperation) class GitRevertAction : StagingAreaOperationAction(GitRevertOperation)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment