A curated list of amazingly awesome Git tools, resources and shiny things
Go to file
2015-09-22 23:17:09 +08:00
README.md fix typo and style 2015-09-22 23:17:09 +08:00

Awesome Git

A curated list of amazingly awesome Git tools, resources and shiny things.

Contributing

Pull requests on interesting tools/projects/resources are welcome.

Table of Contents

Tutorial

There are tons of learning material on the Web

Client

Git clients are available on every platform, from mainframe to your mobile device

  • TortoiseGit - an easy-to-use Git client on Windows. well-intrgrated with Windows Explorer.
  • GitHub Desktop - Git Client by GitHub. works with GitHub and GitHub Enterprise seamlessly
  • SourceTree - free (in-beer) GUI client. Windows and Mac only
  • Tower - a popular non-free Git GUI client. Mac only
  • SmartGit - a commercial comprehensive SCM client with Git, SVN, Mercurial. cross-platform (works on Windows, Mac and Linux)
  • RabbitVCS - TortoiseSVN inspired graphic tool for version control systems, with Nautilus and Thunar integration
  • gitg - a open-source GTK+ GUI client
  • git-cola - a cross-platform Git GUI client
  • SGit - Git client for Android 4.x

Repository Hosting

People have plenty of options to host their source code

  • GitHub - the de-facto git hosting service. Perfect integration with most external services.
  • BitBucket - well-known for its free private repository (5 user max).
  • CodePlex - Microsofts free open source code hosting service with many ASP/C# OSS projects
  • Kiln - paid Git repository hosting service
  • GitLab.com - a free Git repository hosting service served by GitLab EE. Unlimited repositories and private collaborators
  • AWS CodeCommit - a SaaS service provided by Amazon Web Service on high availability infrastructure

Self-Hosted Repository

Or you can host the code yourselves

  • Gitolite - a simple with fine-grained access control
  • GitHub Enterprise - self-hosted solution provided from GitHub
  • Stash - self-hosted refrom Atlassian. Good integration with JIRA and other Atlassian products
  • GitLab CE/EE - a popular open-source Git (CE) with paid support option (EE).
  • Upsource - recent offer from Jetbrains, a famos developer-oriented software company. Code repository hosting feature pending. Free for 10 users. Good integration with YouTrack and TeamCity
  • GitBucket - a GitHub clone powered by Scala.
  • Gogs - a self-hosted Git Service written in Go.

Workflow

Inexpensive branching allows people adopt workflows other than the classic centralilzed workflow

Hook management

Git provide hooks at commit/push phrase, allowing integration with and code quality checking tool and Continuous Integration (CI)

  • pre-commit - a framework for managing and maintaining multi-language pre-commit hooks from Yelp. Extensive support for multiple programming language.
  • Overcommit - a extendable Git hook manager written with Ruby.
  • git-hooks - tool to manage project, user, and global Git hooks

Tools

Various tools for daily operations

  • myrepos - a tool to manage multiple version control repositories
  • BFG Repo-Cleaner - a simpler, faster alternative to git-filter-branch for cleansing bad data out of your Git repository history
  • GitIgnore Collection - collection of gitignore files for various programming language
  • etckeeper - a collection of tools to let /etc be stored in a git repository

Extensions

Git is designed for source control management. but people extend the idea and push version control to everywhere

  • Git Large File Storage - practical solution for versioning large files. supported by GitHub
  • git-annex - allow managing large binaries among machines, as if operation a normal git repository. possible to creates a synchronised folder with git-annex assistant.