Code Monkey home page Code Monkey logo

gitv's Introduction

Maintainers Needed

I am no longer maintaining this project as I no longer use Gitv. If you would like to maintain this project, please email gregsexton.

Readme

gitv is a repository viewer similar to gitk. It is an extension of the fugitive git plugin for vim. It is essentially a wrapper around git log --graph, allowing you to see your branching history. It allows you to view commits, diffstats, inline diffs, and file or folder specific history, and more. It allows you to perform operations on the commit tree interactively, such as merges, cherry picks, reversions, resets, deletions, checkouts, bisections, and rebase operations.

This repo has the most bleeding edge version of gitv. Stable versions are available at the vim.org page.

Bugs, suggestions, pull requests and patches are all very welcome.

We are currently actively looking for feature requests and bugs regarding the latest pre-release.

Basic usage

Start the plugin by running :Gitv in Vim when viewing a file in a git repository.

This plugin is an extension of the fugitive git plugin by Tim Pope.

I hope you like it!

Installation

You will need the tpope/fugitive plugin installed and working for gitv to work.

For Windows, use the ~\vimfiles directory instead of ~/.vim

Method Instalation instructions
Manual Merge the autoload, doc, ftplugin, plugin, and syntax folders into their respective ~/.vim folders
NeoBundle Add NeoBundle 'gregsexton/gitv' to .vimrc
Pathogen Run git clone https://github.com/gregsexton/gitv ~/.vim/bundle/gitv
Plug Add Plug 'gregsexton/gitv', {'on': ['Gitv']} to .vimrc
Vundle Add Plugin 'gregsexton/gitv' to .vimrc

Compatibility

gitv was developed against Vim 7.3 and later 8.0 but earlier versions of Vim should work. Vim 7.2+ is recommended as it ships with syntax highlighting for many Git file types. Vim 7.3+ is recommended for UTF-8 support.

gitv now has basic neovim support.

Purpose

gitv is a 'gitk clone' plugin for the text editor Vim. The goal is to give you a similar set of functionality as a repository viewer. Using this plugin you can view a repository's history including branching and merging, you can see which commits refs point to. You can quickly and easily view what changed to which files and when. You can perform arbitrary diffs (using Vim's excellent built in diff functionality) and you can easily check out whole commits and branches or just individual files if need be.

Throw in the fact that it is running in Vim and you get for free: the ability to move over repository history quickly and precisely using Vim's built in movement operators. You get excellent code syntax highlighting due to Vim's built in ability. You can open up all sorts of repository views in multiple windows and position them exactly how you like. You can take advantage of Vim's registers to copy multiple fragments of code from previous commits. The list goes on.

Links

Click here for help on our official matrix.org server.

Future changes are viewable in the roadmap.

A tentative release schedule is available in the milestone view.

You can download stable release versions (and vote for gitv!) at gitv’s page on vim.org.

Screenshots

commit preview

gitv commit preview

diff splitting

gitv diffsplit

diff stat-ing

gitv diffstat

interactive bisecting

gitv interactive bisecting

interactive rebasing

gitv interactive rebasing

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.