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: The unicode character width table (used for output alignment) has, been updated. Input validation of "git pack-objects --stdin-packs" has been, corrected. for common ancestor negotiation recently introduced in "git, push" codepath. "git pull" had various corner cases that were not well thought out, around its --rebase backend, e.g. "git pull --ff-only" did not stop, but went ahead and rebased when the history on other side is not a, descendant of our history. The series tries to them up. "git apply" miscounted the bytes and failed to read to the end of, binary hunks. "git range-diff" code clean-up. "git commit --up" now works with "--edit" again, after it was, broken in v2.32. Use upload-artifacts v1 (instead of v2) for 32-bit linux, as the, new version has a blocker for that architecture. Checking out all the paths from HEAD during the last conflicted, step in "git rebase" and continuing would cause the step to be, skipped (which is expected), but leaves MERGE_MSG file behind in, GIT_DIR and confuses the next "git commit", which has been, corrected. Various in "git rebase -r" have been. mmap() imitation used to call xmalloc() that dies upon malloc(), failure, which has been corrected to just return an error to the, caller to be handled. "git diff --relative" segfaulted and/or produced incorrect result, when there are unmerged paths. The delayed checkout code path in "git checkout" etc. were chatty, even when --quiet and/or --no-progress options were given. "git branch -D. " used to refuse to remove a broken branch, ref that points at a missing commit, which has been corrected. Build update for Apple clang. The parser for the "--nl" option of "git column" has been, corrected. "git upload-pack" which runs on the other side of "git fetch", forgot to take the ref namespaces into account when handling, want-ref requests. The sparse-index support can corrupt the index structure by storing, a stale and/or uninitialized data, which has been corrected. gy
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 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.
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.
A simple terminal UI for git commands, written in Go with the gocui library.
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
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.