- Purpose: Access advanced git functionality without commands for instant visibility into the status of your working branch
- Version: 1.1.12
- Repo: https://github.com/fstab50/branchdiff
--
branchdiff is a utility for use with git version control. The program:
- Instantly see differences between current working branch and any other branch
- Access advanced git functionality without any code or typing syntax
- Graphical view of when commits were made to the current branch, by whom
- Graphical merge maps
- Ubuntu 18.04, 20.04, 20.10, 22.04
- Linux Mint 18, 19, 20, 21
- Debian variants of Ubuntu / Linux Mint distributions above
- Redhat 7,8+
- CentOS 7, 8+
The easiest way to install branchdiff is via the Debian-tools repository:
-
Download the public key:
$ wget -qO - http://awscloud.center/keys/public.key | sudo apt-key add -
-
Install the repository:
$ sudo echo "deb [arch=amd64] http://deb.awscloud.center <distribution> main" > \ /etc/apt/sources.list.d/debian-tools.list
Where:
<distribution>
is one of the following:trusty
: Ubuntu 14.04, Ubuntu 14.04 based Linux distributionsxenial
: Ubuntu 16.04, 16.04 based Linux distributionsbionic
: Ubuntu 18.04, 18.04 based Linux distributions (Linux Mint 19, etc)cosmic
: Ubuntu 18.10, 18.10 based Linux distributions
-
Verify debian-tools repository installation
$ grep ^ /etc/apt/sources.list /etc/apt/sources.list.d/*
-
Update and install the package:
$ sudo apt update && sudo apt install branchdiff
-
Verify Installation. To verify a Debian (.deb) package installation:
$ apt show branchdiff
The easiest way to install branchdiff on redhat-based Linux distributions is via the developer-tools package repository:
-
Download and install the repo definition file
$ sudo yum install wget
$ wget http://awscloud.center/rpm/developer-tools.repo
$ sudo mv developer-tools.repo /etc/yum.repos.d/ && sudo chown 0:0 developer-tools.repo
-
Update local repository cache
$ sudo yum update -y
-
Install branchdiff os package
$ sudo yum install branchdiff
Answer "y":
-
Verify Installation
$ yum info branchdiff
- See if an upgrade is available, update your distribution's package repositories:
$ sudo apt update
- Issue a list command to see upgrades. Alternatively, you may issue
$ sudo apt upgrade
command.
$ apt list branchdiff -a
- Upgrade
$ sudo apt upgrade
To display the help menu:
$ branchdiff --help
Screenshots / Working Branch Status
branchdiff provides the status of working branch of the current git repository in which the cursor is located:
$ cd <git repository root directory>
$ branchdiff
Screenshots / Extended commit history
~/xlines$ branchdiff
Screenshots / Commit Log / history
branchdiff accurately provides the commit age of the working branch where the cursor is located:
$ branchdiff --commit-log history
Screenshots / Commit Log / detail
branchdiff accurately provides the commit age of the working branch where the cursor is located:
Simple repository with minimal branches and merges:
$ branchdiff --commit-log detail
Git repository with many working branches and complex merge cadence:
$ branchdiff --commit-log detail
Screenshots / Code Diff
When used without a subcommand, the code option (--code) triggers branchdiff to show the lines changed in all files updated in the current working branch compared to the master branch.
$ branchdiff --code
Screenshots / Code Diff <filename>
Pressing the tab key twice autocompletes the names of all files that received updates in the current working branch.
$ branchdiff --code <tab><tab>
Ansible/deploy_configuration.yml Code/core/ec2prices.py
attribute_defs.yml Code/core/__init__.py
cloudformation/dynamodb-table.template.yml Code/core/parameter_processing.py
cloudformation/serverless-monitor.template.yml Code/core/_version.py
Code/connectors/dynamodb.py Code/index.py
Code/connectors/__init__.py Jenkinsfile
Code/connectors/table.py Makefile
Code/core/dynamodb.py requirements.txt
A filename can be selected by typing the first few characters:
$ branchdiff --code Code/con... <tab><tab>
$ branchdiff --code Code/connectors/table.py
All works contained herein copyrighted via below author unless work is explicitly noted by an alternate author.
- Copyright Blake Huber, All Rights Reserved.
- Software contained in this repository is licensed under the MIT License. A copy of the license agreement is included with this repository here.
The following code is provided in accordance with the strict legal disclaimer below:
Code is provided "as is". No liability is assumed by either the code's originating author nor this repo's owner for their use at AWS or any other facility. Furthermore, running function code at AWS may incur monetary charges; in some cases, charges may be substantial. Charges are the sole responsibility of the account holder executing code obtained from this library.
Additional terms may be found in the complete License Agreement.