Branches are a core part of Git workflows, being used to keep unfinished code out of the master codebase. However, if you work with them a lot, you may have a bunch of unused branch references in your branch listing that need…
With containerized applications running in isolated environments, it can be harder than usual to track down problems with applications using too much storage space. Fortunately, Docker provides commands for managing container…
The problem with running commands over SSH is that generally you either have to type them yourself or upload a script file. However, with a bit of bash knowledge, you can pass entire scripts over SSH without having the .sh f…
Docker images can be very large, and if you work with containers often, it may be taking up a lot of your storage. We’ll discuss how to clean up your downloaded images and delete old files that you don’t need….
Docker uses two kinds of formats to represent running processes—images, and containers, and both store data on your computer’s drive. We’ll talk about the commands Docker provides for handling data, and how you can use them…
Using SSH keys is more secure than passwords, and that applies to Git as well. Unlike a password however, it’s harder to change your SSH key, or manage multiple keys. By editing your SSH config though, you can connect to mult…
Docker containers aren’t just about isolation—they’re often used to manage processes that still need to talk to each other directly. But, to communicate, you’ll often need to know each container’s IP address, which you can …
Programs often control operation through configuration bundled with the software, and environment variables allow users to set them at runtime. However, running processes in Docker containers complicates things, so how do you…
One of the regular error messages you’re likely to encounter with Git is the warning that “you are in ‘detached HEAD’ state.” You may have stumbled into this accidentally, but don’t worry—it’s a normal problem, and can easi…
Git hooks are bash scripts that run before or after Git commands, such as commits and pushes. They allow you to automate repetitive actions in your repository, as well as apply filters and checks to your Git workflow….
Tracking down when and where lines of code were added to your codebase can be a headache, but Git stores all changelogs, and does have some tools for searching through commit diffs. You can use them to find lines matching a g…
Programmers often reuse code. In fact, it’s one of the core principles of any good codebase—Don’t Repeat Yourself (DRY). What if you want to use a shared project inside multiple other repositories? The git subtree command…
Git tracks commits over time, allowing you to follow the progression and history of your code. While you can always use Github online to view the public repository, navigating your local repo requires the use of CLI tools to …
Git, as well as services like Github, are built and optimized for lightweight text-based code files, and it’s rare to see repositories larger than a few GB. But, it’s often useful to track large files, and to make that easier…
WebAssembly is a new way to run code on the web. With huge tech companies behind it, it’s poised to revolutionize the way we write web applications, but comes with its own quirks and limitations. Are WASM frameworks a viable …
Visual Studio 2022 has now been officially released alongside .NET 6, which it supports. It includes many new features and improvements, such as AI IntelliCode that can auto-complete chunks of code for you….
Blazor is a new web framework that allows you to create fully interactive web apps using C#. Using the magic of a .NET runtime compiled for WebAssembly, you can even run Blazor entirely on the client—you don’t have to use J…
Blazor is a new web framework from Microsoft designed to compete with industry-leading platforms like React. Except, instead of using JavaScript, it runs on the .NET runtime, and allows developers to make interactive web apps…
git cherry-pick is a simple but powerful tool that allows you to selectively transfer commits from one branch to another. You can use it when you don’t want to merge an entire branch into master, but would still like to incl…
Git’s commit history is designed to be immutable (for the most part) and track every change in your project so you never lose work. However, sometimes it’s necessary to rewrite Git history, so Git provides a few tools for edi…
git reset is a powerful command that can modify the history of your Git repository and fix mistakes you made. However, while the name makes it seem scary to use, it’s actually pretty easy, so let’s talk about how it works….
A .gitignore file is a text file placed in your git repository that tells git not to track certain files and folders that you don’t want being uploaded to your master repository. It has a lot of uses, and you will almost alwa…
Pull Requests are a feature of online git services like Github and Gitlab. They allow anyone to request for changes to be added, even if they don’t have access to the repository. We’ll discuss how they work, and how to use th…
AWS Lambda is a serverless platform for running code without managing the underlying hardware. It’s very flexible, and can run many different workloads, including full C# APIs using ASP.NET Core.
If you’ve sent a link to your WordPress article, and it didn’t expand to show the image, title, and description, that’s because you haven’t set up your Open Graph Meta Tags in WordPress. We’ll show you how to configure them t…