Live data from Hacker News

Tig: text-mode interface for Git

jonas.nitro.dk

21–30 of 31 posts

Re: Tig: text-mode interface for Git

#21
post #4

Pretty neat. Another terminal/GUI interface is Magit, the emacs mode for git. Stuff like this is nice because it does let one directly manipulate objects within a git repository easily with a few keystrokes, rather than having to type 'git exchange-frobnozz --quark-handler=positronium' constantly (or having a million aliases, each of which is useful right up until it needs to be modified slightly). The disadvantage,…

I recently switched from vim to emacs (mostly cause I want to mess around with LISPs and emacs LISP support is good e.g. CIDER) and I've had my eye on Magit from the get go, haven't had the time to mess around with it yet but definitely looking forward to do that. >The disadvantage, of course, is that one really should still know how to use git competently at the command line for the 15% of tasks such wrappers aren't…

Magit takes almost zero time to learn if you're used to the git CLI (some things are a bit weird, but mostly the commands are obvious from the help). It's basically a super-powered version of the git aliases lots of people use, but I don't bother, because I have magit :-)

Re: Tig: text-mode interface for Git

#22
post #6

One of the nice things about tig is its configurability. I have this in my ~/.tigrc, which helps a lot with my workflow: bind main R !git rebase -i %(commit) bind main M !git merge --ff-only %(commit)

I added that R binding a couple of months ago, and it is magical. I hated having to git log, copy the sha, and then 'git rebase -i [paste]' every time. I've mostly switched over to magit, but this is one thing I still use tig for.

For me, rebasing usually concerns roughly the last N commits, which is why I don't bother running `git rebase -i HEAD~N` and ignore and commits I don't want to modify.

Re: Tig: text-mode interface for Git

#24
post #4

Pretty neat. Another terminal/GUI interface is Magit, the emacs mode for git. Stuff like this is nice because it does let one directly manipulate objects within a git repository easily with a few keystrokes, rather than having to type 'git exchange-frobnozz --quark-handler=positronium' constantly (or having a million aliases, each of which is useful right up until it needs to be modified slightly). The disadvantage,…

I recently switched from vim to emacs (mostly cause I want to mess around with LISPs and emacs LISP support is good e.g. CIDER) and I've had my eye on Magit from the get go, haven't had the time to mess around with it yet but definitely looking forward to do that. >The disadvantage, of course, is that one really should still know how to use git competently at the command line for the 15% of tasks such wrappers aren't…

Magit is amazing. Start using it now.

`C-h m` is your friend

Re: Tig: text-mode interface for Git

#25
It would be nice to have pictures of the thing on the homepage... or anywhere linked. I had to find the atlassian link to even know what it looked like.

[EDIT] - I missed the folder called screenshots on the front page that has screenshots in it.

Also Magit, if you use emacs.

Re: Tig: text-mode interface for Git

#26

It would be nice to have pictures of the thing on the homepage... or anywhere linked. I had to find the atlassian link to even know what it looked like. [EDIT] - I missed the folder called screenshots on the front page that has screenshots in it. Also Magit, if you use emacs.

See http://jonas.nitro.dk/tig/screenshots/

Re: Tig: text-mode interface for Git

#27
post #3

I use this tool quite a bit. It's pretty nice, especially when SSHing into remote systems that don't have any UI available, but you need to do work with git repositories. It's the best text-based tool I've seen for quickly visualizing git histories and diffs for each commit.

I like it a bit more colourfull and have more space for the commit notes than for the author's name: ~/.tigrc set git-colors = no set show-changes = yes set commit-order = topo set refresh-mode = auto set main-view = \ date:default \ author:abbreviated \ id:yes,color \ commit-title:graph=yes,refs=yes

Very cool, I've been using tig all this time and never even bothered to realize it was customizable.

Re: Tig: text-mode interface for Git

#29
post #4

Pretty neat. Another terminal/GUI interface is Magit, the emacs mode for git. Stuff like this is nice because it does let one directly manipulate objects within a git repository easily with a few keystrokes, rather than having to type 'git exchange-frobnozz --quark-handler=positronium' constantly (or having a million aliases, each of which is useful right up until it needs to be modified slightly). The disadvantage,…

...and for the use-case where you're on a remote system with a slow connection it's feasible to run magit inside `emacs -nw`.

Use tramp from your local emacs

http://www.emacswiki.org/emacs/TrampMode

Re: Tig: text-mode interface for Git

#30
post #4

Pretty neat. Another terminal/GUI interface is Magit, the emacs mode for git. Stuff like this is nice because it does let one directly manipulate objects within a git repository easily with a few keystrokes, rather than having to type 'git exchange-frobnozz --quark-handler=positronium' constantly (or having a million aliases, each of which is useful right up until it needs to be modified slightly). The disadvantage,…

The `tig` blame mode is still vastly superior though. I find blame in magit (and magit-next) unusable, unfortunately.

I use the magit interface for most operations, but for blame I usually fall back to vc-annotate, as I find it easier to read (commits on the left rather than as headers, coloring, customizable).

I haven't used tig, but from the blame view screenshot [1], they may be similar.

[1] http://jonas.nitro.dk/tig/screenshots/blame-view.html

Post reply on HN