GithubHelp home page GithubHelp logo

Comments (5)

motin avatar motin commented on May 21, 2024 7

Using SourceTree, it is possible to add a custom action that launches git cz in the current repository's directory in a new terminal window. The custom action can be assigned a keyboard shortcut. This is as close of a GUI integration that is possible at the moment it seems. :)
Code here for anyone interested: https://gist.github.com/motin/5896c5b04d039aac48e6a2985d12171b

from cz-cli.

darrachequesne avatar darrachequesne commented on May 21, 2024 2

Hi! We add the need for an IntelliJ integration at work, so we made this really basic plugin: https://plugins.jetbrains.com/plugin/9861-git-commit-template

Source is here: https://github.com/MobileTribe/commit-template-idea-plugin

Open to suggestions!

from cz-cli.

pauleveritt avatar pauleveritt commented on May 21, 2024

Here are the docs for writing IntelliJ plugins but it's going to be an open question whether the plug point that you want is available. [VCS Integration Plugins](VCS Integration Plugins) looks like it is in the ballpark.

I've asked internally and pointed to this ticket. Will need patience, still cleaning up from last week's update-the-universe cycle.

from cz-cli.

jimthedev avatar jimthedev commented on May 21, 2024

@pauleveritt Thanks and no worries on timing. I am still working on several major changes that would be breaking changes for any IDE plugins. It will still be nice to read up and familiarize myself a bit with the ecosystem. Thanks a bunch.

from cz-cli.

vjpr avatar vjpr commented on May 21, 2024

Just wanted to mention there is an IntelliJ plugin for writing plugins at runtime that can rapidly speed up the development process. https://github.com/dkandalov/live-plugin

VCS Plugin Docs - http://www.jetbrains.org/intellij/sdk/docs/reference_guide/vcs_integration_for_plugins.html

I found a silly IntelliJ plugin that adds a button to the commit dialog to use as a starting point: https://github.com/darekkay/what-the-commit

The hook is in META_INF:

...
    <actions>
        <action id="WhatTheCommit.Button" class="com.eclectide.intellij.whatthecommit.WhatTheCommitAction"
                text="What The Commit"
                description="Load random message" icon="/load.png">
            <add-to-group group-id="Vcs.MessageActionGroup" anchor="first"/>
        </action>
    </actions>
...

For showing a dialog: http://www.jetbrains.org/intellij/sdk/docs/user_interface_components/dialog_wrapper.html?search=dialog


This plugin (https://github.com/jshiell/checkstyle-idea/) adds a checkbox to the "Before Commit" section of the commit dialog. I think this is the best approach because it makes it easy to disable it (good reducing frustration during early adoption in a code base).

Most of the code needed is here:
https://github.com/jshiell/checkstyle-idea/blob/e04092ab57bfb0a5ad8a26114faca9ecc4318afd/src/main/java/org/infernus/idea/checkstyle/handlers/ScanFilesBeforeCheckinHandler.java


The checkinHandlerFactory extension point is what we are looking for:

https://github.com/jshiell/checkstyle-idea/blob/e547d13ef4d168a6a2400c76d31bee825b27c3e3/src/main/resources/META-INF/plugin.xml#L184

All the VCS extension points can be found here: https://upsource.jetbrains.com/idea-ce/file/idea-ce-1731d054af4ca27aa827c03929e27eeb0e6a8366/platform/platform-resources/src/META-INF/VcsExtensionPoints.xml

Because of this, I don't think live-plugin will do, it would need to be a proper plugin.


Turns out live-plugin does support extension points (dkandalov/live-plugin#61). Should be very easy to make.

from cz-cli.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.