The humane Terminal UI for git!
The general philosophy is:
- Live tracks changes in the repo, and updates the UI automatically
- Help all available actions and their keybindings are displayed at all times
- Logs are always accessible
- stage files
- unstage files
- checkout files
- untrack files
- stage hunks
- unstage hunks
- discard hunks
- show commit log
- show commit
- show current head
- commit with message
- show unmerged (unpushed) commits
- ammend
- rebase
- show current branch
- show local branches
- checkout local branch
- create and checkout new local branch
- fetch remote branches
- Push to
-u origin <current-branch-name> - Change remote
- Push to custom branch
- Install nvm
git clone https://github.com/hugit-project/hugit.gitcd hugitnvm use 9.11.1npm installnpx shadow-cljs release app
Issues
- Install
nodegitviayarnifnpmcomplains:yarn add nodegit@0.24.3
cd to a git repo, and run:
nvm use 9.11.1node path/to/hugit/target/main.js
Compile
cd path/to/hugitnvm use 9.11.1npm start
This will:
- start the compiler and watch for changes and recompile automatically
- start a Clojure nREPL, connecting to which and running
(user/repl)will start a ClojureScript REPL
Run
cd path/to/hugitnvm use 9.11.1node --inspect target/js/compiled/hugit.jsto run the app
Changes to the hugit source should automatically reflect in the UI. hugit is used to develop hugit whenever possible! We will keep at it till we never have to use anything else.
Copyright 2019 Manisha Pillai, Divyansh Prakash
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this project except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
