SCC

A collection of 29 posts
Using Git Hooks

Using Git Hooks

Git Hooks can be quite useful for a variety of things. Here is a simple example to make sure you don't forget to include an issue # in your commit message.
5 min read
Checking for New GitLab Releases

Checking for New GitLab Releases

In my previous posts, I talked about automatic versioning and automatically creating releases. The next step is to create auto-updating code. By auto-updating I don’t mean code that automatically updates behind your user’s back ala Windows 10. You can do that if you want, but I believe the
6 min read
Automating Gitlab Releases

Automating Gitlab Releases

My previous post talked about versioning. I thought I would add to that discussion by talking about how I do releases and how I setup auto-updating in my apps, using the GitLab Package Repository. This a new feature I’ve started adding lately, so it’s still a work in
8 min read
Automatic Versioning

Automatic Versioning

At the GLA Summit recently minted LabVIEW Champion Felipe Pinheiro Silva gave a 7×7 on versioning. It was interesting. Be sure to take a few minutes and watch it when the video is released. I do things slightly differently. I learned my method from another LabVIEW Champion, Stefan Lemmens.
7 min read
April 2021 Webinar

April 2021 Webinar

April 22, 10 AM MT 10 things I wish I knew when I started using Git. Using Git can be complicated. It is not designed to be user-friendly. Yet it is at the core of good software engineering practices. Unit Tests are great for telling you that you accidentally broke
2 min read
LazyGit

LazyGit

In a previous post, I mentioned lazygit in passing. It’s a nice CLI replacement for some of the Git GUI tools like SourceTree. It’s not too well known so I decided to do a little write-up on it. What LazyGit has over something like SourceTree is that is
5 min read
View the Git Reflog Graphically

View the Git Reflog Graphically

While creating some content for my “Using Git Effectively” course, I discovered something new and amazingly useful. You may know about Git’s reflog and that it provides a chronological history of where your HEAD has been so that you can recover orphaned commits. For some things though, it can
1 min read
Showing Status in the Git Bash Prompt

Showing Status in the Git Bash Prompt

Whenever you use Git there is always this conflict between using a GUI and the Git Bash. They both have their strengths and most people prefer one over the other. I feel like in order to master Git you really need to learn to use both and take advantage of
8 min read
Continuous Integration vs Feature Branches

Continuous Integration vs Feature Branches

After reading the Continuous Delivery Book, I have been thinking a lot about branching strategies and Continuous Integration versus Feature Branching. I put together this little chart of the pros and cons of each. Feature BranchingContinuous IntegrationTrustDoes not require trust. You can control via GitLab who can merge into main
2 min read
Fowler's Branching Patterns

Fowler's Branching Patterns

Martin Fowler is prolific writer about software development. One of his more well-known books is probably Refactoring. He also has a blog with lots of good content. After reading the Continuous Delivery book and working on my Using Git Effectively course, I have been thinking a lot about branching strategies.
2 min read
Branch by Abstraction

Branch by Abstraction

In the past I have been a big fan of Git Flow. I still am, but I recently read the book Continuous Delivery and it has me rethinking some things. In particular they talk about Continuous Integration and not using feature branches, which is a very large component of Git
4 min read
Oh Shit Git

Oh Shit Git

So, I have written a bit about Git lately. I’ve spent a fair amount studying and thinking about Git and how we use it. As part of that research I stumbled upon a really useful and humorous site called ohshitgit. Oh Shit Git covers 9 different common scenarios and
2 min read
Undoing A Bad Commit

Undoing A Bad Commit

For our local LabVIEW User Group we have a Slack channel. Someone on there recently asked for some advice about undoing a commit in Git. They were working on a project in LV2019 and someone had accidentally opened it in LV2020, made some changes, and then pushed them to the
3 min read
Setting up LVCompare and LVMerge

Setting up LVCompare and LVMerge

EDIT: Since I originally wrote this post, I have come up with a much easier way. I am leaving this post up for historcial reasons, but do yourself a favor and just go here There has been some discussion on LinkedIn and other places about how best to setup LVCompare
2 min read
Automatically Creating A Gitlab Repo

Automatically Creating A Gitlab Repo

I’ve been working on streamlining some of my processes lately. I noticed that one of the one things that takes a little time is creating a new GitLabRepository. It just seemed like it took too much time. Here are the previous steps 1. Goto GitLab Webpage 2. Login 3.
2 min read
SSH keys and git bash

SSH keys and git bash

So when it comes to git I much prefer ssh over https. I can’t clearly articulate why, I just do. However one thing I noticed is that git bash was constantly asking me for the password for my ssh key. It got annoying so I did a little research
2 min read
Changing Git's default branch

Changing Git's default branch

In the wake of the protests surrounding George Floyd’s death and the resurgence of the #BlackLivesMatter movement, there has been a lot of talk in the tech community about changing some of the terms we use. There was a lot of focus on moving away from using master and
4 min read
Git Reflog

Git Reflog

In a previous article, I talked about orphaned commits. First, let’s talk about why they are bad. They are bad because they will eventually be removed by git’s garbage collection algorithm, losing the data forever. The reflog is designed to prevent that (for a time). In my previous
3 min read
Navigating a git repository

Navigating a git repository

Navigating the Commit Graph Sometimes we want to go back and revisit a particular commit in our project. We might want to do that for a variety of reasons: * Maybe a customer reports a bug in a specific version. We might go check out that tag to reproduce the bug.
9 min read
Git For Teams

Git For Teams

The traditional approach to teaching git is to start with the details of how git stores and indexes content and build upon that to get to the commonly used commands. This method does give you a really good understanding of what is going on under the hood. It does a
3 min read