It is no secret that git push --force is dangerous. Without question, it will replace the remote with your local changes—and it won’t stop to check if that will override any changes pushed up to remote in the process. When working in a shared repository, this spells danger for even the most careful developer team.
If you've ever worked on a team with more than a couple of people, you've probably been involved in a discussion about branching strategies. Git-flow, GitHub-flow, Microsoft-flow, and many others all try to minimize disruption and conflict when making changes to a large codebase. Recently, I've been playing with a new strategy that may help […]
Git has some popular features that make it easy to rewrite the commit history, and in some cases, this is a benefit. However, these features can be unnecessarily confusing, and if used incorrectly, they can cause data loss.
Recently, I’ve been looking for ways to improve the code health of a project I’m working on. It’s a pretty big team, so things are moving quickly. While the codebase is in good shape now, little things can quickly spiral out of control.
Like many other developers at Atomic, my Git workflow relies heavily on the command line. I recently started using Visual Studio Code since my editor of choice, Spacemacs, did not have great React and TypeScript support. Since I started using VS Code’s Git interface, I have seen an improvement in my productivity. Here are some […]
Git is a fantastic tool, used by millions of people around the world. While Git GUIs can be useful tools, using git on the command line has a higher ceiling for productivity, especially when one can use aliases or refer to their own command history. Today, I’m going to go over a few Git features […]
Git is a very important tool. Not only does it keep a history of a project, but Git also makes it easy for a team to collaborate in a codebase. Although it’s such an important tool, it’s often under-utilized and on occasion, even neglected. A clean Git history is easy to understand and tells a […]
Learning Git can be overwhelming, especially if you have not had any previous experience with a version control system. Many Git tutorials begin with a few basic commands, and you can probably get by on those for most day-to-day tasks. But eventually, you’ll run into a situation that the tutorial didn’t cover (like, “Oops, I […]
I recently joined a new project, and one of my teammates asked me, “Why do you commit so much?” I decided to write this post to explain my reasoning to him and anyone else who might come across my work in the future.