GitLab is a development collaboration tool and git DVCS frontend. It includes repository management features, code reviews, an issue tracker, activity feeds and wikis. GitLab provides fine-grained access control, user management, 5 permission levels and branch constraints, and can utilize LDAP/AD intranet authorization. Powered by Ruby on Rails it comes as open source package, and as commercial supported enterprise version.
Gitea is a painless self-hosted Git service. It is similar to GitHub, Bitbucket, and GitLab. Gitea is a fork of Gogs. See the Gitea Announcement blog post to read about the justification for a fork. Purpose The goal of this project is to provide the easiest, fastest, and most painless way of setting up a self-hosted Git service. With Go, this can be done with an independent binary distribution across all platforms and architectures that Go supports. This support includes Linux, macOS, and Windo
Git is a distributed version control system, originally designed for Linux kernel development and large projects with non-linear workflows. It's comprised of individual tools, reuses ssh and rsync protocols, emphasises speed and data integrity, and keeps every checkout as full-fledged repository, and cryptographically authenticates source history. Various graphical frontends, IDE integrations and web services (GitHub) exist; with its git-fast-export format meanwhile serves interoperability with
minor feature: gitattributes", ".gitignore", and ".mailmap" files that are, symbolic links are ignored. "git apply --3way" used to first attempt a straight application, and only fell back to the 3-way merge algorithm when the stright, application failed. Starting with this version, the command will, first try the 3-way merge algorithm and only when it fails (either, resulting with conflict or the base versions of blobs are missing), falls back to the usual patch application. It does not make sense to make ".gitattributes", ".gitignore" and, ".mailmap" symlinks, as they are supposed to be usable from the, object store (think: bare repositories where HEAD:mailmap etc. are, used). When these files are symbolic links, we used to read the, contents of the files pointed by them by mistake, which has been, corrected. "git stash show" learned to optionally show untracked part of the, stash. "git log --format='...'" learned " (describe)" placeholder. "git repack" so far has been only capable of repacking everything, under the sun into a single pack (or split by size). A cleverer, strategy to reduce the cost of repacking a repository has been, introduced. The http codepath learned to let the credential layer to cache the, password used to unlock a certificate that has successfully been, used. "git commit --up=. ", which was to tweak the changes made, to the contents while keeping the original log message intact, learned "--up=(amend reword): ", that can be used to, tweak both the message and the contents, and only the message, respectively. "git send-email" learned to honor the core.hooksPath configuration. "git format-patch -v. " learned to allow a reroll count that is, not an integer. "git commit" learned "--trailer. =. " option; together, with the interpret-trailers command, this will make it easier to, support custom trailers. "git clone --reject-shallow" option fails the clone as soon as we, notice that we are cloning from a shallow repository. A configuration variable ha
A simple terminal UI for git commands, written in Go with the gocui library.
Git Large File Storage (LFS) replaces large files such as audio samples, videos, datasets, and graphics with text pointers inside Git, while storing the file contents on a remote server like GitHub.com or GitHub Enterprise.
git-assembler can perform automatic merge and rebase operations following a simple declarative script. Like “make”, for branches. It can be used to follow remote branches (such as pull requests) conveniently, test multiple patches together, work on interdependent feature branches more easily, and so on…
BashStyle-NG is a graphical tool and toolchain for changing the behaviour and look'n'feel of Bash, Readline, Vim, Nano and Git. Possibilities include Bash: 12 fancy pre-defined prompt styles, colors are customizable, random text color, random prompt style for each session possible, create your own prompt using UI, colored manpages (without using most), rembering last visited directory (and restore upon new session), customize bash history settings, lscd: customized variant of cd, showing conte
git-annex allows managing files with git, without checking the file contents into git. While that may seem paradoxical, it is useful when dealing with files larger than git can currently easily handle, whether due to limitations in memory, checksumming time, or disk space. Even without file content tracking, being able to manage files with git, move files around and delete files with versioned directory trees, and use branches and distributed clones, are all very handy reasons to use git. And a
Password management should be simple and follow Unix philosophy. With QtPass, each password lives inside of a gpg encrypted file whose filename is the title of the website or resource that requires the password. These encrypted files can be be organised into meaningful folder hierarchies, which can be shared with teams.
GitZone is a Git DNS zone file management tool for BIND9. Users can update their zones in a git repository then during a push the zone files are checked, updated & reloaded from git receive hooks. If there’s an error in a file being pushed then the push is rejected, thus only correct files are stored on the server. GitZone-shell is similar to git-shell but it restricts the user to the zones repository and provides some additional commands for dynamic DNS updates & SSH key management.
Caja extension to add important information about the current git directory. This project is based on nautilus-git by Bilal Elmoussaoui.
Multi-git-status shows uncommited, untracked, unpushed and unpulled changes in multiple Git repositories.