remotemobprogramming / intellij-mob Goto Github PK
View Code? Open in Web Editor NEWIntelliJ plugin for fast git handover and timer with mob
Home Page: https://plugins.jetbrains.com/plugin/14266-mob
License: Apache License 2.0
IntelliJ plugin for fast git handover and timer with mob
Home Page: https://plugins.jetbrains.com/plugin/14266-mob
License: Apache License 2.0
I recently updated Intellij to 2020.3 and this plugin no longer works. The VCS menu item in Intellij has been replaces with a Git menu item so I presume this has something to do with it. There is no longer a Mob option anywhere in the menu.
If there is something I am doing wrong please let me know. Otherwise are there plans to get it to work with this version?
At mob next
, write open filename to commit message.
Next typist are execute mob start
, read filename and open in editor.
see: remotemobprogramming/mob#28
It seems easy to implement with in IntelliJ plugin?
I have some projects that use SVN, and some that use Git as CVS.
For the Git projects, this plugin is installed in version 1.0.3
When I open a project that has no Git integration, an IDE Fatal Error is raised.
Stacktrace:
java.lang.Throwable: repository not found in this project
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:182)
at com.nowsprinting.intellij_mob.git.GitRepositoryUtilKt.getGitRepository(GitRepositoryUtil.kt:32)
at com.nowsprinting.intellij_mob.git.GitRepositoryUtilKt.getGitRepository(GitRepositoryUtil.kt:25)
at com.nowsprinting.intellij_mob.action.done.DoneAction.update(DoneAction.kt:29)
at com.intellij.openapi.actionSystem.ex.ActionUtil.lambda$performDumbAwareUpdate$0(ActionUtil.java:131)
at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareUpdate(ActionUtil.java:145)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.doUpdate(ActionUpdater.java:602)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$updateActionReal$7(ActionUpdater.java:126)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$callAction$8(ActionUpdater.java:191)
at com.intellij.openapi.progress.ProgressManager.lambda$runProcess$0(ProgressManager.java:57)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:188)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$executeProcessUnderProgress$12(CoreProgressManager.java:624)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:698)
at com.intellij.openapi.progress.impl.CoreProgressManager.computeUnderProgress(CoreProgressManager.java:646)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:623)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:66)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:175)
at com.intellij.openapi.progress.ProgressManager.runProcess(ProgressManager.java:57)
at com.intellij.openapi.actionSystem.impl.ActionUpdater.lambda$callAction$9(ActionUpdater.java:189)
at com.intellij.openapi.actionSystem.impl.ActionUpdateEdtExecutor.lambda$computeOnEdt$0(ActionUpdateEdtExecutor.java:45)
at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:199)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:805)
at com.intellij.openapi.application.impl.ApplicationImpl.lambda$invokeLater$4(ApplicationImpl.java:348)
at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:82)
at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:131)
at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:47)
at com.intellij.openapi.application.impl.FlushQueue$FlushNow.run(FlushQueue.java:187)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:891)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:760)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:447)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:818)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:446)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:805)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:492)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
We would like to contribute to this plugin but had problems setting up the development environment. Can you please add some information on how to set up IntelliJ IDEA to be able to start and debug the plugin? That would be great!
it would be great if a mob sesssion could be started for a selectable list of modules.
for example with a list of all modules that can be selected and for all those modules the mob command ist executed.
Tasks
mob next
will always create a new commit, even if there's nothing to commitmob start
, mob next
and mob done
Feature-Request:
Mob next / Changing the branch may cause new files to appear.
Trigger "Reload from disk" when mob start was executed.
This would be awesome! Let me know if I can help.
What do you think about use mob.sh instead of directly git? we have a vscode plugin (https://github.com/remotemobprogramming/mob-vscode-gui) that wraps mob.sh, so we can ensure that teams using many different IDE's can have compatibility
Add option MOB_START_INCLUDE_UNCOMMITTED_CHANGES
At start, stash uncommitted changes and pop
When forming a commit message you are adding an additional set of double quotes. This causes the double quotes to be a part of the commit message.
val options = listOf("--message", ""$message"", "--no-verify")
Version 1.0
of the plugin is not compatible with the 2020.2 EAP of IntelliJ. I don't know if there are some breaking API changes in IntelliJ that affect the plugin, but I would love to use the plugin in 2020.2
To avoid issues with "wrong branch names", it might be a good idea to trim branch names and remove possible whitespaces which may have been added during copy and paste from various chat tools.
Latest publish version is 1.0.1.dirty
https://plugins.jetbrains.com/plugin/14266-mob/update/90804
local changes by compatibility check?
When forming a commit message you are adding an additional set of double quotes. This causes the double quotes to be a part of the commit message.
/com/nowsprinting/intellij_mob/git/Commit.kt
val options = listOf("--message", ""$message"", "--no-verify")
intellij-mob reimplements features of mob in Kotlin. There’s danger that both tools might get incompatible with each other.
One could compile mob to a c-library that can be called from Java. This way, the plugin could reuse mob.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.