100 Commits
Author SHA1 Message Date
Tim Pope 2564c37d0a fugitive.vim 2.5
* Support :source and :write on Fugitive URLs.
* Support :Gedit +cmd ++opt.
* Support :Gedit /absolute/path and ./relative/path.
* Support expansion flags, like :Gedit %:h.
* Support completion of commits for --fixup=/--squash=.
* Support :Gread commit to read commit message.
* Adjust :Gbrowse line range for upstream head.
* Map <CR> in blobs to jump to blamed commit.
* Map p to jump to file in preview window.
* Make :Gmove always relative to repository root.
* Load Projectionist config from .git/info/projections.json.
* Drop instaweb support.
* New public function API.
* Major robustness and error handling improvements.
* Bug fixes.
2018-11-22 09:48:10 -05:00
Tim Pope c316b924e8 Provide FugitivePrepare() 2018-11-22 09:36:28 -05:00
Tim Pope 7a190ead85 Remove transitional functions 2018-11-19 23:01:28 -05:00
Tim Pope 6d497b0e63 Fix erroneous use of :keeppatterns g/.../s//.../
Closes https://github.com/tpope/vim-fugitive/issues/1008
2018-10-28 19:48:15 -04:00
Tim Pope dcf32d2b3d Clearer errors 2018-10-27 18:22:15 -04:00
Tim Pope 0fd64f8fbf Remove FugitiveGenerate() in favor of FugitiveFind() 2018-10-21 19:44:20 -04:00
Tim Pope 2845e6dc4f Fail silently retrieving work tree for blank git dir
Closes https://github.com/tpope/vim-fugitive/issues/1113
2018-10-17 23:20:11 -04:00
Tim Pope 7fae98f263 Associate conflicted files with relevant commits 2018-10-12 15:14:49 -04:00
Tim Pope a9100fafb8 Show 7 not 8 SHA charcters in statusline 2018-09-24 17:04:06 -04:00
Tim Pope 9fec8aadc5 Use merge-base as starting point for ranged :Gbrowse 2018-09-19 17:38:19 -04:00
Tim Pope 66697b99d6 Don't throw error on invalid URL to FugitiveParse() 2018-09-19 17:17:17 -04:00
Tim Pope fb55319973 Show error getting type for object in BufReadCmd 2018-09-15 16:47:28 -04:00
Tim Pope af76267c6a Fix backport of @ to old Git 2018-09-12 12:32:43 -04:00
Tim Pope 144b73946e Older versions of cat-file do not accept -- 2018-09-12 12:06:19 -04:00
Tim Pope d4fb2a2f5c Fix modeline support in historical buffers
Closes https://github.com/tpope/vim-fugitive/issues/1092
2018-09-09 09:37:06 -04:00
Tim Pope 4bf30ce907 Dogfood fugitive#Prepare() 2018-09-02 23:26:14 -04:00
Tim Pope 0fe0964385 Enhance fugitive#Prepare() 2018-09-02 23:25:43 -04:00
Tim Pope 8b4a1017b6 Simplify :Gstatus reset logic 2018-08-29 20:35:35 -04:00
Tim Pope 66e0fe5d3e Fix - in :Gstatus on line 1 as Vinegar like navigation 2018-08-29 20:34:42 -04:00
Tim Pope 61b09ca6b7 Fix gf in gitcommit diff
Closes https://github.com/tpope/vim-fugitive/issues/1084
2018-08-29 17:15:28 -04:00
Tim Pope b3651aa744 Use platform path separator for Projectionist config 2018-08-29 17:15:28 -04:00
Tim Pope fd83fcaf90 Support expansion flags 2018-08-28 00:35:35 -04:00
Tim Pope 1e3786734b Add potential alternative name for FugitiveRoute() 2018-08-28 00:35:35 -04:00
Tim Pope 4d3835f637 Accept buffer number to FugitiveRoute() 2018-08-28 00:35:35 -04:00
Tim Pope 44e5df8433 Provide API for retrieving working dir relative path 2018-08-27 21:04:41 -04:00
Tim Pope a202238b5d Support Projectionist config in .git/info/projections.json 2018-08-26 17:42:19 -04:00
Tim Pope bb2797d313 Special case :0Gread to get around FileReadCmd limitations 2018-08-20 15:00:55 -04:00
Tim Pope 67e9756c35 Support .git/.. to refer to work tree 2018-08-20 15:00:55 -04:00
Tim Pope ae2005adbb Return '' for FugitiveRoute('') 2018-08-20 15:00:55 -04:00
Tim Pope ed36717a68 Use 2 argument system() rather than stdin redirect 2018-08-19 23:26:36 -04:00
Tim Pope b1ab990314 Use -- to disambiguate arguments
This is to enable future replacement of s:Prepare() with
fugitive#Prepare().
2018-08-19 23:24:45 -04:00
Tim Pope 2b5effe2f1 Fix :Gbrowse with cwd other than work tree 2018-08-19 18:27:46 -04:00
Tim Pope 662b501eee Resolve temp files only when using as buffer name
Closes https://github.com/tpope/vim-fugitive/issues/1078
2018-08-19 14:56:34 -04:00
Tim Pope 7bdf33d375 Always convert backslashes on Windows
The old conditional was fine for most things, but this ensures that
backslashes are used even for raw user input.

References https://github.com/tpope/vim-fugitive/issues/1079
2018-08-19 14:56:34 -04:00
Tim Pope e9dc363745 Fix check for need to convert Windows path slashes
Closes https://github.com/tpope/vim-fugitive/issues/1079
2018-08-19 05:07:33 -04:00
Tim Pope 9979b2ab7c Ignore 'shellslash' when checking for Win32 shell 2018-08-19 00:11:46 -04:00
Tim Pope 8589246545 Tweak check for Win32 shell
References https://github.com/tpope/vim-fugitive/issues/1079
2018-08-18 23:15:05 -04:00
Tim Pope 7b0aa58090 Accept ./ paths as relative to cwd 2018-08-15 19:24:35 -04:00
Tim Pope 45c21fc384 Normalize path specs when generating commands 2018-08-13 00:08:59 -04:00
Tim Pope 8dc13a6a72 Restore backwards compatible behavior of repo.translate() 2018-08-12 23:03:20 -04:00
Tim Pope 0614acc770 Fix issues with commit:./relative completion 2018-08-12 21:37:38 -04:00
Tim Pope 1a7b07cf22 Support commit:./relative style revisions 2018-08-11 19:15:56 -04:00
Tim Pope 4a3c6b4a56 Adjust section headers 2018-08-11 19:15:56 -04:00
Tim Pope e3c9588e07 Extract function for getting current commit/ref 2018-08-11 19:15:56 -04:00
Tim Pope 40facfde5e Rewrite <C-R><C-G> and y<C-G> 2018-08-11 02:41:33 -04:00
Tim Pope 236bd21b45 Use <nowait> for - maps
Closes https://github.com/tpope/vim-fugitive/issues/1076
2018-08-11 02:41:33 -04:00
Tim Pope e9ce313912 Support pathspec arguments to :Gcd 2018-08-11 01:26:23 -04:00
Tim Pope 74b10425eb Fix legacy expansion of bare caret/tilde 2018-08-11 01:26:21 -04:00
Tim Pope 1a041936da Provide less awkward signature for s:Prepare() 2018-08-11 00:55:21 -04:00
Tim Pope a358191cfb Use unambiguous paths for :Gstatus dot map
When the current working directory isn't the work tree, use absolute
paths so that pairing with both :Git and :! works as expected.
2018-08-10 19:22:13 -04:00
Tim Pope 597289e64d Handle :Gmove paths consistently 2018-08-10 19:22:13 -04:00
Tim Pope 7ea21ca9ac Give precedence to absolute paths over pseudo-relative
I was planning on phasing out support for /path to access a file in the
root of the repo slowly, but life gets simpler if we can count on
absolute paths always working as expected.
2018-08-10 16:00:46 -04:00
Tim Pope 2ca0765dc4 Ignore dot files when globbing 2018-08-10 16:00:46 -04:00
Tim Pope 347d309efb Mention :Gcommit %
Closes https://github.com/tpope/vim-fugitive/issues/1029
2018-08-10 16:00:42 -04:00
Tim Pope dd262b7e21 Decouple routing from repo object 2018-08-06 16:38:49 -04:00
Tim Pope f91c34069e Decouple Head() from repo object 2018-08-06 16:38:49 -04:00
Tim Pope 40e2dcba05 Delegate to other real filename implementations 2018-08-06 16:38:49 -04:00
Tim Pope a3e9518186 Fix file API to distinguish between commits 2018-08-06 16:38:49 -04:00
Tim Pope 8c63314381 Report error checking for merge conflict
References https://github.com/tpope/vim-fugitive/issues/756
2018-08-06 11:13:42 -04:00
Tim Pope 12e0151750 Adjust completion of /absolute/paths
Support for an initial slash to access a work tree file is being phased
out.
2018-08-06 10:55:46 -04:00
Tim Pope 887d86e920 Don't strip trailing slash from URLs 2018-08-06 10:54:09 -04:00
Tim Pope 73ed8e8a71 Fix check for empty remote 2018-08-06 01:45:39 -04:00
Tim Pope 4bf7f2fd69 Support :(top) pseudo-pathspecs 2018-08-04 20:13:47 -04:00
Tim Pope 08d471056e Provide fugitive#Prepare() 2018-08-04 20:13:47 -04:00
Tim Pope 969a3d857f Don't escape "!" when calling :terminal 2018-08-04 20:13:47 -04:00
Tim Pope 06b3da7204 Fix shell expansion in :Git! buffers 2018-08-04 18:54:28 -04:00
Tim Pope db3b837e6e Rewrite :Glog to use string argument rather than list
This makes shell expansion less weird.
2018-08-03 01:35:44 -04:00
Tim Pope b780bce39b Expand argument to :Gwrite 2018-08-02 22:50:33 -04:00
Tim Pope a615172b14 Edit index file when no work tree present
Life gets simpler if this function never fails.
2018-08-02 18:39:02 -04:00
Tim Pope caee67c748 Fix query operations in bare repositories 2018-08-02 18:39:02 -04:00
Tim Pope 1fea1e5821 Support :Gedit /absolute/path when possible
Usage of /relative/path is deprecated in favor of ./relative/path, but
it's still supported on top of this for now.
2018-08-02 15:32:14 -04:00
Tim Pope 80e410c81a Fix :Gedit default from commit to work tree 2018-08-02 15:16:36 -04:00
Tim Pope 84fcfae7f0 Unify shell expansion 2018-08-01 21:49:49 -04:00
Tim Pope 4d684256ba Update :Gbrowse docs 2018-08-01 17:21:16 -04:00
Tim Pope 0e948d514c Fix write command with Win32 path 2018-08-01 14:14:38 -04:00
Tim Pope 4eee908ad5 Adjust :Gbrowse range for upstream head 2018-08-01 13:54:12 -04:00
Tim Pope c1d2fc1a19 Remove filename expansion from buffer object
This has long haunted me as a particularly egregious design, as
expansion of "%" is always respective to the current buffer.
2018-07-31 23:57:38 -04:00
Tim Pope c85980cd93 Rename s:shellslash() to s:Slash() 2018-07-31 16:39:15 -04:00
Tim Pope 81deb6333a Improve worktree support 2018-07-31 16:39:13 -04:00
Tim Pope 85f340590d Fix :Gbrowse in historical buffers 2018-07-31 15:25:14 -04:00
Tim Pope fc8f9eda9d Rename Fugitive revisions to Fugitive objects
Neither term is great, as they both exclude work tree files in Git
parlance, but "object" is a better umbrella term as "revision" can be
actively misleading in some contexts.
2018-07-31 02:44:44 -04:00
Tim Pope c82abd0558 Fix function reference 2018-07-31 02:44:42 -04:00
Tim Pope d859e05f00 Really fix :Gcd
Closes https://github.com/tpope/vim-fugitive/issues/1071
2018-07-31 02:24:31 -04:00
Tim Pope 3feda7f440 Fix :Gcd
Closes https://github.com/tpope/vim-fugitive/issues/1071
2018-07-31 01:00:14 -04:00
Tim Pope c9c406a118 Fix extra slash generating work tree filenames
Closes https://github.com/tpope/vim-fugitive/issues/1069
2018-07-30 19:40:47 -04:00
Tim Pope a877908acd Fix check for absolute path in FugitiveGenerate() 2018-07-30 01:36:31 -04:00
Tim Pope 6c89a3675b Support :Gedit +cmd ++opt 2018-07-30 00:47:26 -04:00
Tim Pope bf796562b6 Add better name for function as alias 2018-07-29 22:41:29 -04:00
Tim Pope 023ab8e4a6 Eliminate s:repo() and s:buffer() 2018-07-29 22:41:29 -04:00
Tim Pope da95d96ece Replace s:repo().rev_parse() 2018-07-29 22:41:29 -04:00
Tim Pope 8a0a448f56 Show fake trees when editing directory in index 2018-07-29 15:08:31 -04:00
Tim Pope 004da420e5 Match trailing slash in FugitivePath() 2018-07-29 14:30:51 -04:00
Tim Pope 8b4194047c Rearrange 2018-07-29 14:30:48 -04:00
Tim Pope 716edd4bc0 Redo completion 2018-07-29 00:24:28 -04:00
Tim Pope 70c0f132f5 Fix :Gblame 2018-07-29 00:24:28 -04:00
Tim Pope a8392e0ebb Fix fugitive#Real() with non-Fugitive URL 2018-07-29 00:24:28 -04:00
Tim Pope 64fbfc7a8d Whitespace fix 2018-07-29 00:24:28 -04:00
Tim Pope f232e4c6a3 Support completion of local commits for --fixup=/--squash= 2018-07-28 22:05:03 -04:00
Tim Pope db7fd110a8 Move implementation functions below public API 2018-07-28 22:05:03 -04:00
Tim Pope 248764f2c3 Provide FugitiveGitDir() 2018-07-28 22:05:03 -04:00