Skip to content

Commit

Permalink
chore: script for creating per-file diffs against arbitrary geth comm…
Browse files Browse the repository at this point in the history
…it (#1212)

* chore: script for creating per-file diffs against arbitrary geth commit

* chore: add new-line at end

* fix: linter recommendations
  • Loading branch information
ARR4N authored Jun 18, 2024
1 parent 51f48bc commit 5567b89
Show file tree
Hide file tree
Showing 2 changed files with 37 additions and 0 deletions.
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@ awscpu
*logs/

.vscode*
workspace.code-workspace

*.pb*

Expand All @@ -51,3 +52,6 @@ cmd/simulator/simulator

# goreleaser
dist/

# Outputs of `scripts/diff_against.sh`
diffs/
33 changes: 33 additions & 0 deletions scripts/diff_against.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#!/bin/bash

#
# Usage: scripts/diff_against.sh {geth_commit}
#
# Per-file diffs will be written to `diffs/{geth_commit}`.
#
# Example: `scripts/diff_against.sh b20b4a71598481443d60b261d3e5dcb37f8a0d82` to compare with v1.13.8.
#
# *NOTE* Before running this script:
# 1. Run `scripts/format_as_upstream.sh` to reformat this repo as `ethereum/go-ethereum`.
# 2. Add geth as a remote: `git remote add -f geth git@github.com:ethereum/go-ethereum.git`.
# 3. Find the geth commit for the latest version merged into this repo.
#

set -e;
set -u;

ROOT=$(git rev-parse --show-toplevel);
cd "${ROOT}";

BASE="${1}";

# The diffs/ directory is in .gitignore to avoid recursive diffiffiffs.
mkdir -p "diffs/${BASE}";

git diff "${BASE}" --name-only | while read -r f
do
echo "${f}";
DIR=$(dirname "${f}");
mkdir -p "diffs/${BASE}/${DIR}";
git diff "${BASE}" -- "${f}" > "diffs/${BASE}/${f}.diff";
done

0 comments on commit 5567b89

Please sign in to comment.