Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Comparing changes

Choose two branches to see what's changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
base fork: bthomastsai/my-linux-env
base: 71142f8f51
...
head fork: bthomastsai/my-linux-env
compare: 973943d3f7
Checking mergeability… Don't worry, you can still create the pull request.
  • 2 commits
  • 6 files changed
  • 0 commit comments
  • 1 contributor
View
2  .bashrc
@@ -119,7 +119,7 @@ fi
#fi
export SDCV_PAGER=/usr/bin/less
export EDITOR=vim
-set -o vi
+#set -o vi
bind '"\x1b\x5b\x41":history-search-backward'
bind '"\x1b\x5b\x42":history-search-forward'
View
2  .profile
@@ -20,3 +20,5 @@ fi
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
+
+[ -d "$HOME/.vim/bundle/gj/bin" ] && PATH="$PATH:$HOME/.vim/bundle/gj/bin"
View
2  .vim-bundle
@@ -0,0 +1,2 @@
+#!/bin/sh
+git clone https://github.com/gmarik/Vundle.vim.git ~/.vim/bundle/Vundle.vim
View
196 .vim/doc/fugitive.txt
@@ -1,38 +1,14 @@
*fugitive.txt* A Git wrapper so awesome, it should be illegal
-Author: Tim Pope <vimNOSPAM@tpope.org> *fugitive-author*
+Author: Tim Pope <http://tpo.pe/>
License: Same terms as Vim itself (see |license|)
This plugin is only available if 'compatible' is not set.
INTRODUCTION *fugitive*
-Install in ~/.vim, or in ~\vimfiles if you're on Windows and feeling lucky.
-Vim 7.2 is recommended as it ships with syntax highlighting for many Git file
-types.
-
-If you're in a hurry to get started, here are some things to try:
-
-In any file in your repository, run |:Gedit| HEAD. Press <CR> to jump to the
-current branch. Press <CR> again to jump to the top most commit. Keep using
-<CR> to explore parent commits, trees, and blobs. Use C in a tree or blob to
-get back to the commit.
-
-Edit a file in the work tree and make some changes. Use |:Gdiff| to open up
-the indexed version. Use |do| and |dp| on various hunks to bring the files in
-sync, or use |:Gread| to pull in all changes. Write the indexed version to
-stage the file.
-
-Run |:Gstatus| to check your repository's status. Use "-" to stage and reset
-files and "p" to add/reset --patch them. Invoke |:Gcommit| to commit your
-changes.
-
-Run |:Gblame| in a work tree file to see a blame in a vertical split. Press
-<CR> on any line to reopen and reblame that file as it stood in that commit.
-Press o or O on any line to inspect that commit in a split or a tab.
-
-Run |:Ggrep| to search the work tree or history. Run |:Gmove| to rename a
-file. Run |:Gremove| to delete a file.
+Whenever you edit a file from a Git repository, a set of commands is defined
+that serve as a gateway to Git.
COMMANDS *fugitive-commands*
@@ -43,6 +19,10 @@ that are part of Git repositories).
:Git [args] Run an arbitrary git command. Similar to :!git [args]
but chdir to the repository tree first.
+ *fugitive-:Git!*
+:Git! [args] Like |:Git|, but capture the output into a temp file,
+ and edit that temp file.
+
*fugitive-:Gcd*
:Gcd [directory] |:cd| relative to the repository.
@@ -51,37 +31,87 @@ that are part of Git repositories).
*fugitive-:Gstatus*
:Gstatus Bring up the output of git-status in the preview
- window. In addition to standard motions, you can
- use <C-N> and <C-P> to jump from filename to
- filename. Press C to invoke |:Gcommit|. Press D to
- |:Gdiff| the file on the cursor line, or ds to
- |:Gsdiff|. Press - to stage or unstage the file on
- the cursor line. Press p to do so on a per hunk basis
- (--patch). All of D, -, and p have a different,
- sensible (and hopefully intuitive) behavior when
- invoked on a heading rather than a file name.
+ window. The following maps, which work on the cursor
+ line file where sensible, are provided:
+
+ g? show this help
+ <C-N> next file
+ <C-P> previous file
+ <CR> |:Gedit|
+ - |:Git| add
+ - |:Git| reset (staged files)
+ cA |:Gcommit| --amend --reuse-message=HEAD
+ ca |:Gcommit| --amend
+ cc |:Gcommit|
+ cva |:Gcommit| --amend --verbose
+ cvc |:Gcommit| --verbose
+ D |:Gdiff|
+ ds |:Gsdiff|
+ dp |:Git!| diff (p for patch; use :Gw to apply)
+ dp |:Git| add --intent-to-add (untracked files)
+ dv |:Gvdiff|
+ O |:Gtabedit|
+ o |:Gsplit|
+ p |:Git| add --patch
+ p |:Git| reset --patch (staged files)
+ q close status
+ r reload status
+ S |:Gvsplit|
*fugitive-:Gcommit*
:Gcommit [args] A wrapper around git-commit. If there is nothing
to commit, |:Gstatus| is called instead. Unless the
arguments given would skip the invocation of an editor
(e.g., -m), a split window will be used to obtain a
- commit message. Write and close that window (:wq or
- |:Gwrite|) to finish the commit. Unlike when running
- the actual git-commit command, it is possible (but
- unadvisable) to muck with the index with commands like
- git-add and git-reset while a commit message is
- pending.
+ commit message, or a new tab if -v is given. Write
+ and close that window (:wq or |:Gwrite|) to finish the
+ commit. Unlike when running the actual git-commit
+ command, it is possible (but unadvisable) to alter the
+ index with commands like git-add and git-reset while a
+ commit message is pending.
+
+ *fugitive-:Gmerge*
+:Gmerge [args] Calls git-merge and loads errors and conflicted files
+ into the quickfix list. Opens a |:Gcommit| style
+ split window for the commit message if the merge
+ succeeds. If called during a merge conflict, the
+ conflicted files from the current index are loaded
+ into the quickfix list.
+
+ *fugitive-:Gpull*
+:Gpull [args] Like |:Gmerge|, but for git-pull.
+
+ *fugitive-:Gpush*
+:Gpush [args] Invoke git-push, load the results into the quickfix
+ list, and invoke |:cwindow| to reveal any errors.
+ |:Dispatch| is used if available for asynchronous
+ invocation.
+
+ *fugitive-:Gfetch*
+:Gfetch [args] Like |:Gpush|, but for git-fetch.
*fugitive-:Ggrep*
:Ggrep [args] |:grep| with git-grep as 'grepprg'.
+ *fugitive-:Glgrep*
+:Glgrep [args] |:lgrep| with git-grep as 'grepprg'.
+
*fugitive-:Glog*
:Glog [args] Load all previous revisions of the current file into
the quickfix list. Additional git-log arguments can
be given (for example, --reverse). If "--" appears as
an argument, no file specific filtering is done, and
- commits are loaded into the quickfix list.
+ previous commits rather than previous file revisions
+ are loaded.
+
+:{range}Glog [args] Use git-log -L to load previous revisions of the given
+ range of the current file into the quickfix list. The
+ cursor is positioned on the first line of the first
+ diff hunk for each commit.
+
+ *fugitive-:Gllog*
+:Gllog [args] Like |:Glog|, but use the location list instead of the
+ quickfix list.
*fugitive-:Gedit* *fugitive-:Ge*
:Gedit [revision] |:edit| a |fugitive-revision|.
@@ -93,10 +123,15 @@ that are part of Git repositories).
:Gvsplit [revision] |:vsplit| a |fugitive-revision|.
*fugitive-:Gtabedit*
-:Gtabedit [revision] |:tabedit| a |fugitive-revision|
+:Gtabedit [revision] |:tabedit| a |fugitive-revision|.
*fugitive-:Gpedit*
-:Gpedit [revision] |:pedit| a |fugitive-revision|
+:Gpedit [revision] |:pedit| a |fugitive-revision|.
+
+:Gsplit! [args] *fugitive-:Gsplit!* *fugitive-:Gvsplit!*
+:Gvsplit! [args] *fugitive-:Gtabedit!* *fugitive-:Gpedit!*
+:Gtabedit! [args] Like |:Git!|, but open the resulting temp file in a
+:Gpedit! [args] split, tab, or preview window.
*fugitive-:Gread*
:Gread [revision] Empty the buffer and |:read| a |fugitive-revision|.
@@ -107,7 +142,13 @@ that are part of Git repositories).
:{range}Gread [revision]
|:read| in a |fugitive-revision| after {range}.
- *fugitive-:Gwrite*
+ *fugitive-:Gread!*
+:Gread! [args] Empty the buffer and |:read| the output of a Git
+ command. For example, :Gread! show HEAD:%.
+
+:{range}Gread! [args] |:read| the output of a Git command after {range}.
+
+ *fugitive-:Gw* *fugitive-:Gwrite*
:Gwrite Write to the current file's path and stage the results.
When run in a work tree file, it is effectively git
add. Elsewhere, it is effectively git-checkout. A
@@ -133,14 +174,16 @@ that are part of Git repositories).
index is used (which means a three-way diff during a
merge conflict, making it a git-mergetool
alternative). The newer of the two files is placed
- to the right. Use |do| and |dp| and write to the
- index file to simulate "git add --patch".
+ to the right or bottom, depending on 'diffopt' and
+ the width of the window relative to 'textwidth'. Use
+ |do| and |dp| and write to the index file to simulate
+ "git add --patch".
*fugitive-:Gsdiff*
-:Gsdiff [revision] Like |:Gdiff|, but split horizontally.
+:Gsdiff [revision] Like |:Gdiff|, but always split horizontally.
*fugitive-:Gvdiff*
-:Gvdiff [revision] Identical to |:Gdiff|. For symmetry with |:Gsdiff|.
+:Gvdiff [revision] Like |:Gdiff|, but always split vertically.
*fugitive-:Gmove*
:Gmove {destination} Wrapper around git-mv that renames the buffer
@@ -156,10 +199,23 @@ that are part of Git repositories).
*fugitive-:Gblame*
:Gblame [flags] Run git-blame on the file and open the results in a
- scroll bound vertical split. Press enter on a line to
- reblame the file as it was in that commit. You can
- give any of ltwfsMC as flags and they will be passed
- along to git-blame.
+ scroll bound vertical split. You can give any of
+ ltfnsewMC as flags and they will be passed along to
+ git-blame. The following maps, which work on the
+ cursor line commit where sensible, are provided:
+
+ g? show this help
+ A resize to end of author column
+ C resize to end of commit column
+ D resize to end of date/time column
+ q close blame and return to blamed window
+ gq q, then |:Gedit| to return to work tree version
+ <CR> q, then open commit
+ o open commit in horizontal split
+ O open commit in new tab
+ - reblame at commit
+ ~ reblame at [count]th first grandparent
+ P reblame at [count]th parent (like HEAD^[count])
:[range]Gblame [flags] Run git-blame on the given range.
@@ -172,6 +228,11 @@ that are part of Git repositories).
"git instaweb" from a terminal). If a range is given,
it is appropriately appended to the URL as an anchor.
+ To use with GitHub FI, point g:fugitive_github_domains
+ at a list of domains:
+>
+ let g:fugitive_github_domains = ['https://example.com']
+~
:[range]Gbrowse! Like :Gbrowse, but put the URL on the clipboard rather
than opening it.
@@ -187,6 +248,16 @@ that are part of Git repositories).
MAPPINGS *fugitive-mappings*
+These maps are available everywhere.
+
+ *fugitive-c_CTRL-R_CTRL-G*
+<C-R><C-G> On the command line, recall the path to the current
+ object (that is, a representation of the object
+ recognized by |:Gedit|).
+
+ *fugitive-y_CTRL-G*
+["x]y<C-G> Yank the commit SHA and path to the current object.
+
These maps are available in Git objects.
*fugitive-<CR>*
@@ -195,9 +266,16 @@ These maps are available in Git objects.
*fugitive-o*
o Jump to the revision under the cursor in a new split.
+ *fugitive-S*
+S Jump to the revision under the cursor in a new
+ vertical split.
+
*fugitive-O*
O Jump to the revision under the cursor in a new tab.
+ *fugitive--*
+- Go to the tree containing the current tree or blob.
+
*fugitive-~*
~ Go to the current file in the [count]th first
ancestor.
@@ -208,6 +286,10 @@ P Go to the current file in the [count]th parent.
*fugitive-C*
C Go to the commit containing the current file.
+ *fugitive-.*
+. Start a |:| command line with the current revision
+ prepopulated at the end of the line.
+
*fugitive-a*
a Show the current tag, commit, or tree in an alternate
format.
@@ -248,6 +330,12 @@ a statusline, this one matches the default when 'ruler' is set:
>
set statusline=%<%f\ %h%m%r%{fugitive#statusline()}%=%-14.(%l,%c%V%)\ %P
<
+ *fugitive#head(...)*
+Use fugitive#head() to return the name of the current branch. If the current
+HEAD is detached, fugitive#head() will return the empty string, unless the
+optional argument is given, in which case the hash of the current commit will
+be truncated to the given number of characters.
+
ABOUT *fugitive-about*
Grab the latest version or report a bug on GitHub:
View
1,796 .vim/plugin/fugitive.vim
1,319 additions, 477 deletions not shown
View
44 .vimrc
@@ -1,3 +1,47 @@
+set nocompatible " be iMproved, required
+filetype off " required
+
+" set the runtime path to include Vundle and initialize
+set rtp+=~/.vim/bundle/Vundle.vim
+call vundle#begin()
+" " alternatively, pass a path where Vundle should install plugins
+" "call vundle#begin('~/some/path/here')
+"
+" " let Vundle manage Vundle, required
+Plugin 'gmarik/Vundle.vim'
+"
+ " The following are examples of different formats supported.
+ " Keep Plugin commands between vundle#begin/end.
+ " plugin on GitHub repo
+Plugin 'tpope/vim-fugitive'
+ " plugin from http://vim-scripts.org/vim/scripts.html
+Plugin 'L9'
+ " Git plugin not hosted on GitHub
+Plugin 'git://git.wincent.com/command-t.git'
+ " git repos on your local machine (i.e. when working on your own plugin)
+ "Plugin 'file:///home/gmarik/path/to/plugin'
+ " The sparkup vim script is in a subdirectory of this repo called vim.
+ " Pass the path to set the runtimepath properly.
+Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
+ " Avoid a name conflict with L9
+Plugin 'user/L9', {'name': 'newL9'}
+Plugin 'mileszs/ack.vim'
+Plugin 'fcamel/gj'
+
+ " All of your Plugins must be added before the following line
+ call vundle#end() " required
+ filetype plugin indent on " required
+ " To ignore plugin indent changes, instead use:
+ "filetype plugin on
+ "
+ " Brief help
+ " :PluginList - list configured plugins
+ " :PluginInstall(!) - install (update) plugins
+ " :PluginSearch(!) foo - search (or refresh cache first) for foo
+ " :PluginClean(!) - confirm (or auto-approve) removal of unused plugins
+ "
+ " see :h vundle for more details or wiki for FAQ
+ " Put your non-Plugin stuff after this line
"Set Mapleader
let mapleader = ","
let g:mapleader = ","

No commit comments for this range

Something went wrong with that request. Please try again.