From 05c0efacab20ad3e985bde0d9bcc553ba3fe1807 Mon Sep 17 00:00:00 2001 From: Tim Pope Date: Wed, 24 Feb 2010 22:48:40 -0500 Subject: [PATCH] Add a README --- README.markdown | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 README.markdown diff --git a/README.markdown b/README.markdown new file mode 100644 index 0000000..189bd1f --- /dev/null +++ b/README.markdown @@ -0,0 +1,45 @@ +fugitive.vim +============ + +I'm not going to lie to you; fugitive.vim may very well be the best +Git wrapper of all time. Check out these features: + +View any blob, tree, commit, or tag in the repository with `:Gedit` (and +`:Gsplit`, `:Gvsplit`, `:Gtabedit`, ...). Edit a file in the index and +write to it to stage the changes. Use `:Gdiff` to bring up the staged +version of the file side by side with the working tree version and use +Vim's diff handling capabilities to stage a subset of the file's +changes. + +Bring up the output of `git status` with `:Gstatus`. Use `-` to +`add`/`reset` a file's changes, or `p` to `add`/`reset` `--patch` that +mofo. And guess what `:Gcommit` does! + +`:Gblame` brings up an interactive vertical split with `git blame` +output. Press enter on a line to reblame the file as it stood in that +commit, or `o` to open that commit in a split. + +`:Gmove` does a `git mv` on a file and simultaneously renames the +buffer. `:Gremove` does a `git rm` on a file and simultaneously deletes +the buffer. + +Use `:Ggrep` to search the work tree (or any arbitrary commit) with +`git grep`, skipping over that which is not tracked in the repository. +`:Glog` loads all previous revisions of a file into the quickfix list so +you can iterate over them and watch the file evolve! + +`:Gread` is a variant of `git checkout -- filename` that operates on the +buffer rather than the filename. This means you can use `u` to undo it +and you never get any warnings about the file changing outside Vim. +`:Gwrite` writes to both the work tree and index versions of a file, +making it like `git add` when called from a work tree file and like +`git checkout` when called from the index or a blob in history. + +Add `%{fugitive#statusline()}` to `'statusline'` to get an indicator +with the current branch in (surprise!) your statusline. + +Oh, and of course there's `:Git` for running any arbitrary command. + +Like fugitive.vim? Follow the repository on +[GitHub](http://github.com/tpope/vim-fugitive) and vote for it on +[vim.org](http://www.vim.org/scripts/script.php?script_id=2975).