SublimeGit: Full-featured Git integration for Sublime Text
sublimegit.net
sublimegit.net
I'm about to get on a 14 hour international flight in a couple of hours, but i'll be happy to answer any questions. Also, i'm tweeting from @SublimeGit every once in a while.
https://github.com/jisaacks/GitGutter http://www.jisaacks.com/gitgutter
It's quite nice, but I would turn off live updating, as that slowed things down a bit for me. Updating on save works perfectly fine.
EDIT: Here is the section on the read me about it: https://github.com/jisaacks/GitGutter#non-blocking-mode
I've done this with "big" files, as well as large folders and it works perfectly both locally and over a NFS share.
How many LoC are the files you editing?
I could imagine diffing being a way better experience straight from the file you want to diff, and with code highlighting. That definitely sucks from the command line, but it's also pretty rarely needed.
Anything else?
The big disadvantage I see is that this is not going to be on anyone else's computer when I'm pairing or just messing around with them, so if I get accustomed to not using command-line interface then I get screwed when I'm not on my own computer...
Edit: the quick-commit feature looks pretty cool as a way to encourage making smaller commits, since I always forget to commit in smaller pieces.
There are numerous advantages one of being that magit uses multiple buffers to show contextual information. For example I can get a nice ASCII view of the commit log in one buffer (in all the available formats) and see the diffs for each commit with glorious colour-highlighting in the other, side-by-side. The diff buffer updates as I scroll through the history.
Easier to remember mnemonics for common tasks.
I can use magit-blame-mode to see the blame information inline with the file as I edit it.
Diffs are super-easy and I can jump right to any file to fix things as I come across them from the logs or the status view.
Plus emacs... so I get hooks into magit that I can use from other packages like org-mode, etc.
I find the command-line to be tedious and slow now. I'd rather use a smart front-end with sane defaults and a nice interface.
Probably 60% of the people at the company I work at don't even know how to use Git or SVN from the command line.
This seems like a decent enough bridge between those two worlds.
Speaking generally to editor integrations and VCS GUI tools, the prime advantages vs. the CLI tools are:
1) Uninterrupted workflow for common tasks. Select files for commit, review the diffs, then commit all without leaving the editor.
2) Better visualization and interactive workflow. Examples include, good intra-line, side-by-side diff. Being able to `git blame` then trivially explore the associated commits and surrounding history for those commits. Yes, it's possible to do all of this from the command line, but it's often clunky compared to well-thought out tooling. With some VCS systems and projects, graphical display and navigation of history is helpful for understanding the relative state of branches, tracking down obscure bugs, etc.
That said, I'm not a fan of glossy GUI tools that hide the working model of the underlying VCS. For the most part, not using the CLI is a great way to never really "get" version control as a powerful workflow tool. Perforce's P4V GUI tool gets credit on this point. The last time I used it, there was a console that showed the command line run and results for every GUI action. This happened to be a nice learning tool, providing relevant, live examples of basic and advanced usage.
Anyway, no-one is forcing anyone to buy it, so all good.
So, just seems to be a dark pattern leading you to BELIEVE you have to pay. However, if you like it, pay for it.
Also, for a free alternative, I have to mention https://github.com/kemayo/sublime-text-git which inspired SublimeGit. There are way more people using this, and it's been around forever. Personally I like mine better of course, but I realize that different people need different things :-)
So, as I said: all good :)
Also, I try my best to keep up with user requests, which leads to about 1-2 releases a month. While there are occasionally bugfixes going into kemayo's plugin, I'm not sure if it's receiving any significant development (not trying to call anyone out here, it's just my observation from occasionally looking at the repo).
Anyway, no-one is forcing anyone to buy it, so all good.
Does it prompt me for a commit message when I save code, with like a special CMD-Shift-S to push or something, or is it just using sublime as a GUI for git?
Basically just that, but with shortcuts for stuff like stage current file, commit, push, etc
`shift + cmd + p --> qcc` for quick committing the file I just finished to edit is priceless.
I'm not sure that it's actually documented though, which definitely is an error on my part.
LaTeXing: http://www.latexing.com/
Sublimerge: http://www.sublimerge.com/
If you could add the ability to stage by line/hunk, perhaps from within the diff view, that would be pretty rad.
Also too bad that you can't initiate an interactive rebase using SublimeGit.
If I have to drop to the terminal for those two things (which I do quite frequently), realistically I'll end up just using the terminal for all git operations.
Rebase is one of the big ones coming up.
Lots more GIT options for Sublime: https://sublime.wbond.net/search/git
If it's free, 'sign up for free' suggests otherwise. If there's a cost, please be up front about it. If you haven't decided what or whether to charge, just say so ;)
http://osxdaily.com/wp-content/uploads/2010/02/FileMerge-fil...
Screenshots of the software:
http://osxdaily.com/wp-content/uploads/2010/02/FileMerge-fil...
You probably don't realize how much this slows you down.
I use git on the command line too, it fits well with my workflow (branch features, "commit -a" when it seems relevant, rebase/squash when ready).
Maybe a more complicated workflow could justify an IDE plugin, but for me CLI is fine.
Also, there is completion for git in shells such as bash and zsh.
I think it depends a lot on your workflow. If you're comfortable with, and used to, the command line this might not be for you. But for easy staging and committing of individual files/hunks I find it very useful. Also, even if you're just using Sublime Text as your commit message editor, this will give you color highlighting of you commit message, including gently nudging you towards good practices for commit messages.
There was a open source Git plugin for Sublime long time ago.
It's a brilliant plugin, with a great unlimited "trial". I've not came across any bugs, nor have I had any issues with it. So again, what makes it crap?
Why does using a plugin make us novices? I'm proficient in Git and Sublime. I've written several plugins myself.