Jonathan Bowman

Categories: Dev

Dotfiles, the Prequel: Easy and Fast

~/.*

In my ongoing quest to explore a variety of ways of managing config files, I believe I have found a way that is attractively simple.

Dotfiles Part 3: A Modular Approach Using Multiple Git Repositories

~/.*

In this article, I offer an approach for managing dotfiles in a modular way. I find a modular approach important because only some config files are useful in all contexts, while others are unique to a specific environment.…

Read Git Default Branch from the Command Line

git logo

On occasion, one needs to know the default branch for a given Git repo. Below I have compiled methods that fit a variety of use cases, and cover specific platforms (Github and Gitlab) as well as methods that work universally regardless of remote platform.

A Modular Approach to Storing Home Directory Config Files (Dotfiles) in Git using Bash, Zsh, or Powershell

In this article, I offer an approach for managing dotfiles in a modular fashion. I find a modular approach important because only some config files are useful in all contexts, while others are unique to a specific environment. For instance, my text editor configuration (.vimrc, in my case) is used on my Windows laptop, Linux laptop, FreeBSD server, and even my phone. On the other hand, files for configuring a Linux graphical environment, a developer’s Macbook, Windows Subsystem for Linux (WSL), or Windows Powershell, may not make sense to clutter or confuse environments to which they do not apply.

Dotfiles Part 2: A Bare Repo Approach to storing Home Directory Config Files in Git

~/.*

We can make life easier by using Git to store and version configuration files that reside in a system’s home directory (aka “dotfiles”). But how do we do so selectively and non-invasively, so that only the desired files are committed to version control? This article explores one such method: using a “bare” git repo to track the files.

Dotfiles Part 1: A Simple Approach to storing Home Directory Config Files in Git without a Bare Repo

~/.*

Configuration files that reside in your home directory are both precious and dynamic. Given this, storing them in a version control system like Git makes good sense. Due to concerns around complexity, security, and cleanliness, though, no one wants to manage all files in their home directory with version control. Let’s explore how to manage just the important configuration files, also known as “dotfiles”, by selectively committing only the desired files to version control.

Modern Vim Setup (Neovim 5 base configuration with LSP client)

In this article, I will start from scratch with Neovim, building a base configuration that can later be extended. The goals:

Create and Initialize a New GitHub Repository from the Command Line

git logo

I prefer to stay on the command line when creating a new repo, rather than going back and forth between Github’s web interface and the command line. Here are the steps I use when creating a new project.

Generating a .gitignore file

Obtain Salesforce Session Id through Visualforce, Anonymous Apex, or Cookie Retrieval (and avoid SESSION_ID_REMOVED)

The Salesforce Session Id is a token representing a user’s authenticated session, and must be used to make API calls as that user, such as this example using curl: