GithubHelp home page GithubHelp logo

gitahead / gitahead Goto Github PK

View Code? Open in Web Editor NEW
1.8K 52.0 235.0 64.68 MB

Understand your Git history!

Home Page: https://gitahead.com

License: MIT License

CMake 0.32% Lua 5.40% C 16.84% HTML 17.77% Makefile 3.48% CSS 0.05% Roff 0.06% C++ 50.99% Python 2.11% Objective-C 0.20% Objective-C++ 2.48% Shell 0.06% Batchfile 0.01% QMake 0.09% PHP 0.01% Perl 0.14% Ruby 0.01% Nim 0.01% Tcl 0.01% Visual Basic .NET 0.01%

gitahead's Introduction

Please Note!

GitAhead is no longer under active development. Low-level maintenance and bug fix releases will be made as necessary for the foreseeable future, but no new features or major changes are planned at this time. Please consider continuing development in a rebranded fork for anything other than trivial changes.

GitAhead - Understand Your History

GitAhead is a graphical Git client designed to help you understand and manage your source code history. It's available as a pre-built binary for Windows, Linux, and macOS, or can be built from source by following the directions below.

Build Environment

  • C++11 compiler
    • Windows - MSVC >= 2017 recommended
    • Linux - GCC >= 6.2 recommended
    • macOS - Xcode >= 10.1 recommended
  • CMake >= 3.3.1
  • Ninja (optional)

Dependencies

External dependencies can be satisfied by system libraries or installed separately. Included dependencies are submodules of this repository. Some submodules are optional or may also be satisfied by system libraries.

External Dependencies

  • Qt (required >= 5.9)

Included Dependencies

  • libgit2 (required)
  • cmark (required)
  • git (only needed for the credential helpers)
  • libssh2 (needed by libgit2 for SSH support)
  • openssl (needed by libssh2 and libgit2 on some platforms)

Note that building OpenSSL on Windows requires Perl and NASM.

How to Build

Initialize Submodules

git submodule init
git submodule update

Build OpenSSL

# Start from root of gitahead repo.
cd dep/openssl/openssl

Win:

perl Configure VC-WIN64A
nmake

Mac:

./Configure darwin64-x86_64-cc no-shared
make

Linux:

./config -fPIC
make

Configure Build

# Start from root of gitahead repo.
mkdir -p build/release
cd build/release
cmake -G Ninja -DCMAKE_BUILD_TYPE=Release ../..

If you have Qt installed in a non-standard location, you may have to specify the path to Qt by passing -DCMAKE_PREFIX_PATH=<path-to-qt> where <path-to-qt> points to the Qt install directory that contains bin, lib, etc.

Build

ninja

License

GitAhead is licensed under the MIT license. See LICENSE.md for details.

gitahead's People

Contributors

abrynos avatar andrekr avatar gomes3191 avatar gr3q avatar gustavovelascoh avatar hackhaslam avatar jazzzz avatar jpwhiting avatar jwestell avatar kas-luthor avatar kolanich avatar luzpaz avatar maickonn avatar pmraps avatar rlbxku1r avatar rubo77 avatar seb3s avatar shane-gramlich avatar sphaerophoria avatar stefanknotzer avatar symphorien avatar yougikou avatar ysalmon avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gitahead's Issues

Fetch/push asynchronously

@hackhaslam commented on Mar 18, 2016, 8:13 PM UTC:

Currently the interface can become slightly unresponsive right after pressing fetch/pull/push because the transfer happens synchronously and yields to the event loop in the callbacks. The callbacks aren't called quickly enough to look truly responsive.

This issue was moved by shanegramlich from stinb/gitahead#16.

Multiple repos open on Windows

@groke commented on Apr 28, 2016, 3:48 PM UTC:

You asked me about this last week so I've been playing with having multiple repositories open in GitAhead on Windows trying to determine what feels native. Here is what I think feels natural.

  • A single instance should coorespond to one open repo. If the user opens a repo from the file menu it should replace the currently open repo
  • In order to have a second repo open they should launch a new instance of GitAhead
  • Closing gitahead either from the file menu or through the X should just close the current instance only
  • When gitahead is launched from the icon it should start in the selector screen, not with the previously opened project. Although that can be added as an option or checkbox on the selector

This issue was moved by shanegramlich from stinb/gitahead#24.

Draggable tabs

@hackhaslam commented on Jul 29, 2016, 9:26 PM UTC:

At the very least tabs should be draggable for reordering. It would also be nice to have the ability to drag tabs out into their own window, drop windows onto the tab bar to capture them as tabs, and drag tabs between windows.

This issue was moved by shanegramlich from stinb/gitahead#33.

Navigate to commit links that aren't reachable from the current branch

@hackhaslam commented on Mar 18, 2016, 8:05 PM UTC:

Only links that are reachable from the current branch can be visited from a link. One possible solution would be iterate over all refs until we can reach the commit then change to that branch. A better solution might be to carry a reference hint with each link. Presumably that would be known at each site where links are created.

This issue was moved by shanegramlich from stinb/gitahead#15.

Show date in log view

@hackhaslam commented on Sep 21, 2016, 9:17 PM UTC:

Entries that are from previous days should show the date in addition to the time. Entries from today should still be just the time. It should be easy to do by changing the delegate to draw the date if the it's not today's date.

This issue was moved by shanegramlich from stinb/gitahead#49.

Save log to disk

@hackhaslam commented on Mar 18, 2016, 7:58 PM UTC:

The log should be saved to disk and restored when the repository is reopened. Then there would have to be an explicit clear button or something similar.

This issue was moved by shanegramlich from stinb/gitahead#12.

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.