Need advice about which tool to choose?Ask the StackShare community!

Git

321.5K
172.2K
+ 1
6.6K
Gitless

4
18
+ 1
0
Add tool

Git vs Gitless: What are the differences?

Introduction

Git and Gitless are both version control systems used for managing and tracking changes to files in software development projects. Although they serve the same purpose, there are key differences between the two.

  1. Integration with existing Git workflows: Git integrates seamlessly with existing Git workflows and allows developers to use Git commands directly. In contrast, Gitless provides a simplified subset of Git commands and introduces new commands that attempt to make the version control process more intuitive and user-friendly.

  2. Explicit commits and branches: Git requires developers to explicitly create commits and branches, making it easier to track changes and manage work in progress. Gitless, on the other hand, follows a more implicit approach by automatically committing changes and creating temporary branches, which may confuse some users accustomed to the explicit nature of Git.

  3. Simplified commit history: Gitless provides a simplified and linear commit history by automatically squashing multiple commits into a single commit. This can help to make the commit history cleaner and easier to understand. In contrast, Git retains the full commit history, including all individual commits, providing a more detailed overview of the development process.

  4. Reversible operations: Gitless introduces reversible operations, allowing users to easily undo changes without the need for complex Git commands. This can be particularly useful for beginners or individuals who are not familiar with the intricacies of Git's revert and reset commands.

  5. Built-in staging area: Git includes a staging area that allows developers to selectively stage changes before committing them. Gitless simplifies this process by automatically staging all changes, eliminating the need for manual staging. While this reduces complexity, it also removes the flexibility and granularity offered by Git's staging area.

  6. Collaboration with Git users: Gitless is designed to be compatible with Git, meaning that Git users can interact with Gitless repositories and vice versa. This allows for collaboration between teams using different version control systems, making it easier to work together on projects.

In Summary, Git and Gitless differ in their integration with existing Git workflows, the explicitness of commits and branches, the handling of commit history, the availability of reversible operations, the presence of a staging area, and the compatibility with Git.

Decisions about Git and Gitless
Kamaldeep Singh

SVN is much simpler than git for the simple stuff (checking in files and updating them when everyone's online), and much more complex than git for the complicated stuff (branching and merging). Or put another way, git's learning curve is steep up front, and then increases moderately as you do weird things; SVN's learning curve is very shallow up front and then increases rapidly.

If you're storing large files, if you're not branching, if you're not storing source code, and if your team is happy with SVN and the workflow you have, I'd say you should stay on SVN.

If you're writing source code with a relatively modern development practice (developers doing local builds and tests, pre-commit code reviews, preferably automated testing, preferably some amount of open-source code), you should move to git for two reasons: first, this style of working inherently requires frequent branching and merging, and second, your ability to interact with outside projects is easier if you're all comfortable with git instead of snapshotting the outside project into SVN.

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Git
Pros of Gitless
  • 1.4K
    Distributed version control system
  • 1.1K
    Efficient branching and merging
  • 959
    Fast
  • 845
    Open source
  • 726
    Better than svn
  • 368
    Great command-line application
  • 306
    Simple
  • 291
    Free
  • 232
    Easy to use
  • 222
    Does not require server
  • 27
    Distributed
  • 22
    Small & Fast
  • 18
    Feature based workflow
  • 15
    Staging Area
  • 13
    Most wide-spread VSC
  • 11
    Role-based codelines
  • 11
    Disposable Experimentation
  • 7
    Frictionless Context Switching
  • 6
    Data Assurance
  • 5
    Efficient
  • 4
    Just awesome
  • 3
    Github integration
  • 3
    Easy branching and merging
  • 2
    Compatible
  • 2
    Flexible
  • 2
    Possible to lose history and commits
  • 1
    Rebase supported natively; reflog; access to plumbing
  • 1
    Light
  • 1
    Team Integration
  • 1
    Fast, scalable, distributed revision control system
  • 1
    Easy
  • 1
    Flexible, easy, Safe, and fast
  • 1
    CLI is great, but the GUI tools are awesome
  • 1
    It's what you do
  • 0
    Phinx
    Be the first to leave a pro

    Sign up to add or upvote prosMake informed product decisions

    Cons of Git
    Cons of Gitless
    • 16
      Hard to learn
    • 11
      Inconsistent command line interface
    • 9
      Easy to lose uncommitted work
    • 7
      Worst documentation ever possibly made
    • 5
      Awful merge handling
    • 3
      Unexistent preventive security flows
    • 3
      Rebase hell
    • 2
      When --force is disabled, cannot rebase
    • 2
      Ironically even die-hard supporters screw up badly
    • 1
      Doesn't scale for big data
      Be the first to leave a con

      Sign up to add or upvote consMake informed product decisions

      - No public GitHub repository available -

      What is Git?

      Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.

      What is Gitless?

      Gitless is an experiment to see what happens if you put a simple veneer on an app that changes the underlying concepts. Because Gitless is implemented on top of Git (could be considered what Git pros call a "porcelain" of Git), you can always fall back on Git.

      Need advice about which tool to choose?Ask the StackShare community!

      What companies use Git?
      What companies use Gitless?
      See which teams inside your own company are using Git or Gitless.
      Sign up for StackShare EnterpriseLearn More

      Sign up to get full access to all the companiesMake informed product decisions

      What tools integrate with Git?
      What tools integrate with Gitless?

      Sign up to get full access to all the tool integrationsMake informed product decisions

      Blog Posts

      Mar 24 2021 at 12:57PM

      Pinterest

      GitJenkinsKafka+7
      3
      2122
      GitJenkinsGroovy+4
      4
      2631
      GitCloudBees+2
      3
      4418
      Git.NETCloudBees+3
      6
      1063
      Mar 4 2020 at 5:14PM

      Atlassian

      GitBitbucketWindows+4
      3
      1023
      GitNode.jsFirebase+5
      7
      2342
      What are some alternatives to Git and Gitless?
      GitHub
      GitHub is the best place to share code with friends, co-workers, classmates, and complete strangers. Over three million people use GitHub to build amazing things together.
      SVN (Subversion)
      Subversion exists to be universally recognized and adopted as an open-source, centralized version control system characterized by its reliability as a safe haven for valuable data; the simplicity of its model and usage; and its ability to support the needs of a wide variety of users and projects, from individuals to large-scale enterprise operations.
      Bitbucket
      Bitbucket gives teams one place to plan projects, collaborate on code, test and deploy, all with free private Git repositories. Teams choose Bitbucket because it has a superior Jira integration, built-in CI/CD, & is free for up to 5 users.
      Perforce
      Visibility, access control, workflow and code management for Git environments. Flexibility of collaborating on the same codebase and code reviews using any combination of Perforce and Git workflows and tools without compromise.
      Mercurial
      Mercurial is dedicated to speed and efficiency with a sane user interface. It is written in Python. Mercurial's implementation and data structures are designed to be fast. You can generate diffs between revisions, or jump back in time within seconds.
      See all alternatives