TrustRadius Insights for Git are summaries of user sentiment data from TrustRadius reviews and, when necessary, third party data sources.
Business Problems Solved
Git is a widely used version control system that offers a range of use cases for different teams and organizations. Engineering and dev-ops teams rely on Git to handle version control of codebases, allowing them to create branches for features and bug fixes. By using Git, they can easily merge and release code to different environments, ensuring smooth software development processes.
Freelance software developers also find value in Git as it enables them to work on multiple machines and platforms, providing flexibility and backup of source code. They appreciate the ability to easily manage and track changes in their codebase, ensuring effective collaboration with clients and the ability to revert back if needed.
Organizations benefit from Git's ability to store source code across multiple repositories and branches. They typically have a mainline development branch for code review and automated builds, allowing for efficient management of projects. Git addresses the problem of multiple people updating a codebase by managing merging of changes, storing committed changes in a log for review, and offering rollback options when necessary.
Furthermore, Git fosters collaboration and code contribution among developers by preventing conflicts and facilitating efficient software development. It is successfully utilized by various departments like Tech Writing and Implementation, helping streamline release cycles and integrating smoothly with other tools like Bitbucket for pull requests.
Additionally, Git is an essential tool for managing app development processes. Its usage ensures faster release of changes while minimizing negative impacts on existing functionalities. Many companies rely on Git to manage massive codebases and enable cross-team code review, making it a reliable solution for tracking project progress and ensuring software security vulnerabilities are addressed.
Overall, Git's ease of use and cleaner approach to version control have received praise from users. It is widely recognized as stable and reliable for managing code, providing a centralized area for sharing and collaborating on projects across different teams.
In summary, whether it's handling version control, managing projects for customers, tracking changes in websites or internal scripting projects, or enabling concurrent work, Git proves to be a valuable and versatile tool for developers, freelancers, and organizations alike.
Git is used across the organization for version control of the code build. It helps us track our deployments and snapshots of various artifacts we develop. All kinds of programming languages and files are checked in to git via github. We also control the code migration between various environments using Git.
Pros
Pull requests to control what's checked in where
2-step commit and push to enable cleaner check-in process
Personal forks to help developers with quick development and testing
Cons
I feel that code merging using command line is not very straightforward when there are conflicts
Likelihood to Recommend
Git is well suited for code that can be versioned. It cannot be effectively used for auto-generated code files from tools. For instance, Git is well suited for any code that we build using languages such as Java, python, scala, node, etc. However, the java code generated from tools such as Talend are not very well tracked when we use Git.
VU
Verified User
Employee in Corporate (Information Technology & Services company, 10,001+ employees)
Git is currently being used for version control in our IT department. This allows us to not only keep various projects under source control, but also to work on many different features concurrently, and maintain many different versions of our software.
Pros
Git has a very small footprint and works seamlessly on all major platforms.
Git's branch management model is wonderful and simple, especially when compared to some other VCS tools I've used.
Cons
Git has no native GUI. This means that if you want a GUI you're reliant on third party software in addition to Git.
Git Repository configuration is done at the host level which makes it difficult to enforce certain requirements, like with Git hooks for example.
Likelihood to Recommend
Git is well suited for any file based scenario where source control is required. We mostly use Git for managing software repositories, but it would also be well suited for document version control. Anything that requires the modification of files and the potential need to roll back to a previous version is a good candidate for Git. The one scenario that in my opinion breaks this rule is database version control. With databases, we manage changes to table structure, functions, stored procedures etc., but I have yet to see good implementation of this with Git.
Our whole company uses Git for code collaboration where a team can continuously develop features for the software. Also, it allows our peers to review the code and once necessary approvals are received, we can merge the code ensuring proper workflow is followed. Git gives us helpful insight regarding project progress, software security vulnerabilities.
Pros
It's a great version control system helps us to develop the software incrementally releasing stable versions.
Git gives proper reminders when ever the my peers requests code review approval.
Git can be easily integrated with other software like Slack, Developer workbenches like Web Storm, Visual Studio Code, etc.
Git commands are very intuitive, makes us to easily understand and get the work done.
Git gives us great insights on the project progress like the number of Pull Requests Raised, Closed Issues, etc.
Git gives an intuitive UI, so the user can operate through the web.
Cons
Git can still improve UI design.
Git can also embed some artificial intelligence, and suggest alternate ways to solve the problem when the code review happens.
Git can also suggest when the deadline for any reviews should be closed so it helps the developers in the team to finish that PR within time.
Likelihood to Recommend
Git is an open-source tool suitable for both small as well as large teams. It's great software for code collaboration and version control. I can't think of any situation where it will be less appropriate.
VU
Verified User
Engineer in Information Technology (Information Technology and Services company, 201-500 employees)
We use Git across all of our development projects in order to work on multiple aspects at once and then merge branches as needed. There are four scrum teams and one Kanban team that handles hardware issues. All the scrum teams are developing and maintaining software to various degrees across the organization.
Pros
It's the best at version control that I've seen. Rollbacks are a snap.
Provides local control down the individual developer level, which in turn allows easy management back up the chain of command.
Cloning is perfect when you need to copy a project to tweak it without messing with the main branch.
Cons
If you're not a developer, it'll take some time to get the hang of it, particularly some aspects of the API.
Sometimes the parameters are WAY too long.
Likelihood to Recommend
For any code commitments from any individual developer of any talent range it's awesome. Getting the hang of it happens over time (and can be speeded up if a senior person looks over your shoulder and gives you pointers). This comes into play for testing feature sets and ensuring branches are merged correctly.
For teams where many developers are working on a single project, Git allows them to all work on the same code without messing up back end work in the process. For any bugs or defects that slip through (big ones, I mean), it's super easy to roll back to an earlier version and call it good.
VU
Verified User
Professional in Information Technology (Information Technology and Services company, 501-1000 employees)
GIT is used as a server out of the box. It is being used by the whole organization. Dedicated Git server software helps, amongst other features, to add access control, display the contents of a Git repository via the web, and help managing multiple repositories.
Pros
Unlike centralized version control systems, Git branches are cheap and easy to merge. This facilitates the feature branch workflow very user-understandable.
Cons
Many commands with many options, some commands are non-intuitive and need a level of understanding the internals of Git, commands and arguments are inconsistent to some degree
Likelihood to Recommend
Staging area: Make sure your commits have logically grouped changes and not everything else you are working on.
VU
Verified User
Engineer in Information Technology (Information Technology and Services company, 501-1000 employees)
We currently use Git to track all changes in our multiple websites and landing pages, along with internal scripting projects. Git addresses the issue of keeping track of the code we have created, and maintains security and redundancy between employees. In this way, we can be sure that no one person or one device has all the information we use daily to keep our systems and websites running.
Pros
Git works quite well to keep a record of the code and the changes made on code for our websites and internal scripting.
Git allows multiple developers to work on a single project with the checkout process.
Git allows us to track who makes edits, when they were made, and how we can go back and fix any mistakes or bugs.
Git is FAST!
Cons
Git can be slow to learn, and much of it is done through the command line.
Git is a single solution for a code repository, so if you are looking for larger scale backup or documentation, it might not be the right fit.
Likelihood to Recommend
Git is great for coding for individuals and teams. The ability to have versioning and how git is built into many development tools helps to make using one of the many git repository services easy. I can imagine that for some projects, there are better solutions for keeping code, but for most situations, git works well.
I am a freelance, full-stack, software developer. Git repositories are used for all my code. I use multiple machines to create software for different platforms - Ubuntu to create websites to run on Heroku, and iOS apps. Git allows me to work on any machine while away from my normal setup. It also keeps all my source code backed-up, and I have the ability to grant access to my client if required.
Pros
Backup. It's the cheapest and easiest backup solution I've found in 20 years of coding. If/when a machine goes down I know I have no issues with losing work.
Access. I can access my code on any machine, anywhere I need to be. If I find myself with some spare time, and any machine at hand, I can dive in and carry on working.
Forking. It's very easy to fork new ideas without losing the current development thread.
Cons
I mainly use xCode and SublimeText, both of which provide a number of useful commands to backup my code to git. I'd like to see further integration, perhaps automated.
Likelihood to Recommend
Developers often work in pairs, and on multiple projects at once. Sharing code across multiple machines can be very difficult. I don't know how we did it before Git came along - well, I do, but it wasn't pretty! Git has been a lifesaver on many occasions when systems have gone down due to hard drive failure. Git has also made it possible for me to manage and monitor the input of remote developers, as I can see in the commit logs for each push to the repositories.
We are using Git to store our source code with all of our clients. All the technical staff uses Git as a CVS. It's an awesome product for versioning and managing source code no matter what programming language you use.
Pros
Versioning
Revision of newly implemented code by using Pull Requests
Branches to allow developer working in different features at the same time
Good integration with CI and CD tools
A lot of plugins and tooling are available to be integrated with Git
Cons
Not sure, it has been working awesome to solve our needs and there is a lot of documentation available to meet the product. As you study features you discover ways to use them.
Likelihood to Recommend
Even if you have only one developer working on a project it is always a good idea to use a CVS like Git to version the source code. Not sure where it shouldn't be used.