Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »



    NPM version Build Status Join the chat at

    The easiest way to use git. On any platform. Anywhere.


    Git is known for being a versatile distributed source control system that is a staple of many individuals, communities, and even for the City of Chattanooga to crowd source bicycle parking locations. However, it is not known for userfriendlyness or easy learning curve.

    Ungit brings user friendliness to git without sacrificing the versatility of git.

    Follow @ungitui on twitter

    Quick intro to ungit:



    Requires node.js (≥ 6.11), npm (≥ 3.10.10, comes with node.js) and git (≥ 1.8.x). To install ungit just type:

    npm install -g ungit

    NOTE: If your system requires root access to install global npm packages, make sure you use the -H flag:

    sudo -H npm install -g ungit


    Anywhere you want to start, just type:


    This will launch the server and open up a browser with the ui.


    Put a configuration file called .ungitrc in your home directory (/home/USERNAME on *nix, C:/Users/USERNAME/ on windows). Configuration file must be in json format. See source/config.js for available options.

    You can also override configuration variables at launch by specifying them as command line arguments; ungit --port=8080. To disable boolean features use --no: ungit --no-autoFetch.

    Example of ~/.ungitrc configuration file to change default port and enable bugtracking:

        "port": 8080,
        "bugtracking": true

    External Merge Tools

    If you have your own merge tool that you would like to use, such as Kaleidoscope or p4merge, you can configure ungit to use it. See

    Auto Refresh

    Ungit will watch git directory recursively upon page view and automatically refresh contents on git operations or changes on files that are not configured to be ignored in .gitignore.

    One caveat is that node's with recursive: true option is only available in Mac and Windows. For non Mac and Windows machines, git operations will be automatically refreshed but file changes may require manual refreshes as is unable to detect changes within nested directory hierarchy.

    Text Editor Integrations

    atom-ungit Screenshot

    atom-brackets Screenshot

    Codiad-OpenUngit screenshot

    VSCode-UngitTab screenshot




    Known issues

    • If you're running MacOSX Mavericks and Ungit crashes after a few seconds; try updating npm and node. See #259 and #249 for details.
    • Ubuntu users may have trouble installing because the node executable is named differently on Ubuntu, see #401 for details.
    • Debian Wheezy's supported git and nodejs packages are too old, therefore download newest git and nodejs tarballs and build from source.
    • Adblocker may block Ungit! Some ad blockers, such as Adblock plus and uBlock, don't like localhost api calls and assume that it is a cross domain attack. Please whitelist {localhost||$UngitURL}:{ungit port number}. #887 #892
    • Running git in non English language will result in unexpected behavior! Ungit parses git command results in English to detect repos' states and this causes confusion when git results are not in English. #959



    License (MIT)

    See To read about the Faircode experiment go to #974. Ungit is now once again MIT.

    Dependency Status devDependency Status




    npm i ungit

    Downloadslast 7 days







    last publish


    • avatar