Commit Briefs

1f9436b452 ale

Add .got-backup/ to .gitignore (main)


f5a98fd61e ale

Actualizar README, descripción del plugin y changeNotes para 0.2.1 (tags/v0.2.1)

Documenta el soporte de clone agregado (README, plugin.xml) y sube la versión a 0.2.1.


5fbd71374a ale

Resolver GOT_AUTHOR automáticamente desde git config si el repo no lo define

got.conf de un repo recién clonado solo trae el remote, no un author, así que got commit fallaba con "GOT_AUTHOR environment variable is not set" en cualquier repo clonado sin configuración manual previa. Ahora se resuelve user.name/user.email vía git config como fallback -- got.conf y la config local del repo siguen ganando por precedencia, así que esto nunca pisa un author explícito. Confirmado en vivo contra un repo real.


d0d47588e6 ale

Agregar soporte para clonar repos got por SSH desde el diálogo nativo de IntelliJ

Registra "Got" en el dropdown "Version control" del diálogo Clone Repository (CheckoutProvider) con un panel propio de URL/Directory --no hereda de DvcsCloneDialogComponent porque esa clase de Git4Idea es @ApiStatus.Internal y rompe verifyPlugin. El clone corre en dos pasos (got clone crea el repo bare, got checkout puebla el work tree) a través de CloneableProjectsService, el mismo mecanismo que usa Git4Idea para que el proyecto clonado termine en Recent Projects. La URL solo acepta ssh://, que es el único protocolo que este plugin soporta para clonar.



ee44f00ccb ale

Limpiar comentarios narrativos y actualizar README/plugin.xml para 0.2.0 (tags/v0.2.0)

Recorta comentarios que narraban el proceso de investigacion (referencias a decompilar clases, bugs anteriores ya resueltos, etc.) dejando solo el 'por que' no obvio de cada decision. Actualiza el README, cambeLog y la descripcion del plugin.xml para reflejar las funciones agregadas en esta version: pestana Log, boton Commit and Send, deteccion real de commits salientes, got como VCS distribuido, y refresco automatico del panel de Commit y el Log tras commit/push/update o cambios externos.



17c566b35d ale

agregar un whatcher












4843328d3c ale

Corregir GotPushSupport.getDefaultTarget: sobrecarga de 2 argumentos

PushSupport declara dos getDefaultTarget: la de un argumento es abstracta, pero la de (repositorio, fuente) tiene cuerpo por defecto que siempre retorna null (verificado con javap). El dialogo de Push llama a esa segunda version, y al recibir null marca el modelo con un error de 'empty target' y loadCommits corta la ejecucion antes de invocar GotOutgoingCommitsProvider -- por eso nunca aparecia el log de diagnostico agregado antes y el boton de Push quedaba deshabilitado pese a existir commits reales. Se agrega la sobrecarga faltante delegando a la de un argumento. Mismo patron de bug que CheckinEnvironment.commit() (fase de commit/rollback), donde la plataforma tambien encadena una sobrecarga con valor por defecto distinta a la que se sobreescribio.


ff770dc4d5 ale

Anadir diagnostico al proveedor de commits salientes y popup del widget de rama

GotOutgoingCommitsProvider ahora registra en el log de IntelliJ el remote, la rama, el hash remoto resuelto y los ids encontrados en cada llamada, y ya no deja escapar excepciones que no sean VcsException (antes se perdian en silencio dentro del ExecutorService del dialogo de Push sin quedar registradas en idea.log). Esto es para diagnosticar por que el boton de Push sigue sin habilitarse pese a existir commits pendientes reales. Tambien se implementa GotBranchWidget.getWidgetPopup(), que antes no existia (el valor por defecto de la plataforma es null, por lo que no pasaba nada al hacer click en el widget). Ahora muestra un popup no interactivo con el log reciente cacheado en GotRepository (mismo patron que branch/revision, calculado fuera del EDT).


f980e76321 ale

Implementar deteccion real de commits pendientes de enviar

Anade remoteBranchHash/outgoingCommitIds/catCommit a GotCommandLineWrapper (basados en got ref -l, got log -x y got cat <hash>), y una clase GotFullCommitDetails que adapta un GotCommitObject a VcsFullCommitDetails. GotOutgoingCommitsProvider ahora resuelve el hash de la rama remota y lista los commits no alcanzados por ella en vez de devolver siempre una lista vacia, lo que permite que el dialogo de Push nativo detecte y habilite el boton de envio con commits reales pendientes.


1723d2ac53 ale

Fix EDT violation in GotRepository.getCurrentBranchName()

Reported in vivo: the branch widget never showed anything, and opening the Push dialog hit 'Synchronous execution on EDT' (got info run directly from PushController.createTreeModel on the UI thread) -- the same category of bug fixed earlier for GotContentRevision. getCurrentBranchName()/getCurrentRevision() now return cached fields instead of shelling out to got info on every call. State is read once eagerly on construction and refreshed in update(), which the platform calls off the EDT during a repository refresh cycle.


7ec62b1236 ale

Replace the simple Send action with a native Push dialog

Adds GotPushSource/GotPushTarget/GotPusher/GotOutgoingCommitsProvider/ GotPushTargetPanel/GotPushSupport, wired to the Repository model added previously. This enables IntelliJ's native Push dialog (Ctrl+Shift+K) for got send, showing the current branch and target ('origin/<branch>') the same way Git does, instead of a plain menu action with no preview. GotOutgoingCommitsProvider reports an empty outgoing-commits list: got has no cheap local way to compute what a send would push without contacting the server first, so the dialog works but doesn't preview commits ahead of time. GotPushTargetPanel is read-only (got resolves its own remote/branch via got.conf), unlike Git's editable target. GotSendAction is removed; the same got send functionality is now reached through the Push dialog instead of a VCS Operations Popup entry.


7479a8a7b3 ale

Add a Repository model and a branch-name status bar widget

GotRepository/GotVcsRepositoryCreator/GotRepositoryManager plug into the platform's shared DVCS infrastructure (VcsRepositoryManager, AbstractRepositoryManager) rather than reimplementing repository tracking from scratch. GotBranchWidget (built on DvcsStatusWidget, the same base class git4idea's own branch widget uses) shows the current branch next to the project name in the main toolbar, matching Git's UI. Requires new compile dependencies on intellij.platform.vcs.dvcs and intellij.platform.vcs.dvcs.impl: Repository/RepositoryManager and the status widget base classes live outside com.intellij.modules.vcs. This Repository model is also the prerequisite for real PushSupport (native Ctrl+Shift+K dialog), which follows next.


4a9d1c555f ale

Add status badges to the README

GitHub Actions release workflow status, latest GitHub release version, GPLv3 license, and JetBrains Marketplace version/downloads (plugin 33099).