GitHub vs Chocolatey
When comparing GitHub vs Chocolatey, the Slant community recommends GitHub for most people. In the question“What are the best websites for downloading software?” GitHub is ranked 3rd while Chocolatey is ranked 4th. The most important reason people chose GitHub is:
GitHub is the largest code host on the planet with over 21.4 million hosted repositories and many users. It's unarguably the largest VCS used by developers worldwide and as such, it has a vibrant community that follows it resulting in many guides and tutorials for new users. Even experienced developers can always find an answer to any question they may have.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Large community
GitHub is the largest code host on the planet with over 21.4 million hosted repositories and many users. It's unarguably the largest VCS used by developers worldwide and as such, it has a vibrant community that follows it resulting in many guides and tutorials for new users. Even experienced developers can always find an answer to any question they may have.
Pro Nice and usable UI
GitHub's UI is clean and intuitive. Each view is designed to not fill the screen with useless information.
For example, the repository view displays only the most crucial data about that repo - on the top it displays the number of commits, branches, releases and contributors. When clicked, each of them will take the user to a page that displays more detailed information.
Pro Integrated issue tracking
GitHub has integrated issue tracking that makes hunting and solving bugs easy. Each project's issues page can be filtered by closed issues, assignees, labels and milestones. Issues are also sortable by age, number of comments and update time.
Pro Provides free hosting for static websites
GitHub Pages is a feature that allows developers to create websites for their projects or anything they need a static website for, for free.
Pro Anyone can fork
Any user can fork a project and submit a pull request. If accepted by the owner, the fork will be merged with the master branch.
Pro GitHub makes it easy to find open source projects
GitHub is the largest host in the world for open source projects. Developers from all over the world fork and work on countless projects hosted on it.
GitHub's search box is a powerful tool that allows developers to find open source projects in areas they are interested in and where they can immediately start to contribute.
GitHub also has a page dedicated solely at exploring and finding open source projects, grouping them by each topic they cover. In the same view, GitHub displays trending repositories and sorting them by day, week or month.
Pro Gist (Snippets)
Gists is GitHub's way to easily share code, text snippets or any kind of information with the world. They are an easy way to share text and they work as Git repos, which means that they are forkable and versioned. They are also fully compatible with Git.
Pro Simplified team management tools
GitHub has easy and useful features to control teams, large and small alike. Team members can be given different powers on different projects, ranging from the ability to create them, to only being able to have read-only access.
Pro Convenient continuous integration with Travis CI
GitHub can be integrated with Travis CI for code testing and deployment, furthermore it is free of charge for free open-source projects.
Pro Supports Two-Factor authentication
GitHub has added another layer of security to their user accounts. This layer comes in the form of Two-Factor authentication. After it's enabled, GitHub delivers an authentication code by SMS, or by a free application for smartphones. After two-factor authentication is enabled, the authentication code is sent to the account owner's phone any time someone attempts to sign into their GitHub account. This means that only someone who has both the password and authentication code can sign into the account.
Pro Easy integration with cloud hosting services
Many widely used cloud hosting services are easily integrated with GitHub. Any project hosted on GitHub can be set up on these services in seconds. Some companies that offer this feature are:
- Amazon Web Services
- Google Cloud
- Heroku
- Windows Azure
Pro Support for mandatory code reviews
GitHub allows maintainers to make code reviews mandatory for any repository they choose.
Pro Code search functionality
GitHub supports searching code. Whether it's from a specific project or from the whole website. What's more, GitHub has excellent SEO and you can easily find any line of code hosted on public repos on GitHub even from Google.
Pro Student discounts
GitHub offers very good student discounts along with other things, such as AWS credits.
Pro Additional features for academics
For those with a valid .edu email or valid school ID there are additional benefits such as free private hosting. While it may take time for the account to be verified, it can easily be worth it.
Pro Project management tools available
GitHub has a tool called (quite intuitively) "Projects". It helps teams to organize and prioritize the work they are doing by creating roadmaps and release checklists.
Pro Large number of applications/utilities available
Chocolatey has a massive community package repository of installs (more than 4,000 packages), and its open nature allows everyone to contribute more as needed.
Pro Sieg
Installs silently without crapware.
Pro Easy to use
Just open powershell and type choco install firefox
to install Firefox, or choco install java
to install Java.
Pro Straightforward install process
To install Chocolatey simply copy the text from their site and paste it into either cmd.exe or powershell.
Pro Upgrade all software with one command
choco upgrade all
is like Windows Update for all of your 3rd party software. ... or for the more succinct command use 'cup' !!
Pro Downloaded files are verified by checksums
Chocolatey requires checksums by default for files downloaded over non-secure locations and highly recommends it for HTTPS/SSL locations. It is moving towards requiring checkums by default for downloading from secure locations.
Pro Manages the entire software lifecycle
From install to upgrade to uninstall, Chocolatey manages the whole process.
Pro Scriptable
You can put Chocolatey install commands into your powershell scripts.
Pro Free and open source
It's licensed under Apache License 2.0 with source code available on GitHub.
Pro Decentralized package sources
Packages can be installed from multiple sources, including private sources.
Pro Builds on technologies you know
Unattended installation and PowerShell.
Pro GUI available
There's a package called ChocolateyGUI that can be installed and lets you use Chocolatey with a UI frontend.
Pro Integrates with almost every configuration management / infrastructure automation / RMM tool
Chocolatey integrates with almost every infrastructure automation tool out there.
Pro Support and features available for organizations
There is a business edition available for organizations that need more support. The business edition also includes a Package Synchronizer, Package Internalizer, Package Builder, and a host of other features.
Pro Can be extended with PowerShell
Chocolatey allows installing extension packages that add PowerShell functions to your package automation scripts.
Pro More Selection
It has programs that can't be found in scoop or ninite.
Pro Custom sources
It has ability to add custom sources.
Cons
Con Rule of thumb: 1GB per repository, 100MB per file
For most repositories this is acceptable, but for already large repositories with a long history, this may be a limiting factor.
Con Proprietary
Con Steals and sells your privacy
Con Limited web browser support
Modern web browsers like Waterfox are no longer supported, breaking basic UI elements and making the site unusable.
Con No OAuth2 support
In order to sign in to GitHub, users have to sign up first with unique credentials for GitHub only, so no option to sign in with Google+ or Facebook.
Con Owned by Microsoft
Con Very inconvenient UI
Very hard to switch between projects.
Con Sometimes hard to know which package to install from community package repository
The community repository contains multiple packages with similar names, making it hard to know which one to install. This is of course only related to using Chocolatey with the community repository, and you can look up the number of downloads to see which are the most widely used.
Con Some package installs aren't good or polished or don't install well
Macrium downloads the online installer, 7-zip doesn't associate files, PotPlayer is outdated, etc.
Con Unable to easily change your install directory in the free version
In the free version you must know the native installer switches and pass them through with install args. In the paid versions you have a ubiquitous install directory option where Chocolatey determines how to properly pass that to the underlying native installer.
Con Buggy
Slow, many packages fail to install, and config can corrupt causing it to not be able to manage packages anymore, leading to a bunch of installed and non-updateable software
Con Incomplete and conflicting package options
Not enough maintenance done to package library so there are different similarly-named or -versioned packages available, some broken and some not.
Con Can not download asynchronously
Con No support for ARM64
Users with Windows on Arm can't install native ARM64 binaries. Apps installed with Chocolatey run slower and need more resources on Windows on Arm because they have to be emulated.
Con Uploading packages can be time consuming
It can take weeks to have a package accepted and with a fair amount of resubmitting for the dev/ maintainer.
Con Doesn't care about supporting the community
They used the community to make it the largest repository of packages. Now that they're the de facto standard package manager, they only care to support those that pay them and refuse to fix problems with popular packages.