git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v3 0/3] Introduce a perf test for interactive rebase

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
May 13, 2016, 13:25 UTC
Message-ID
<cover.1463145936.git.johannes.schindelin@gmx.de>
In-Reply-To
<cover.1462955446.git.johannes.schindelin@gmx.de>

This is the second preparatory patch series for my rebase--helper work (i.e. moving parts of the interactive rebase into a builtin).

It simply introduces a perf test (and ensures that it runs in my environment) so as to better determine how much the performance changes, really.

Johannes Schindelin (3):
  perf: let's disable symlinks when they are not available
  perf: make the tests work in worktrees
  Add a perf test for rebase -i
 t/perf/p3404-rebase-interactive.sh | 36 ++++++++++++++++++++++++++++++++++++
 t/perf/perf-lib.sh                 | 19 +++++++++++--------
 2 files changed, 47 insertions(+), 8 deletions(-)
 create mode 100755 t/perf/p3404-rebase-interactive.sh
Published-As: https://github.com/dscho/git/releases/tag/perf-rebase-i-v3
Interdiff vs v2:
 diff --git a/t/perf/p3404-rebase-interactive.sh b/t/perf/p3404-rebase-interactive.sh
 index 382163c..88f47de 100755
 --- a/t/perf/p3404-rebase-interactive.sh
 +++ b/t/perf/p3404-rebase-interactive.sh
 @@ -7,9 +7,14 @@ test_perf_default_repo
  
  # This commit merges a sufficiently long topic branch for reasonable
  # performance testing
 -branch_merge=ba5312d
 +branch_merge=ba5312da19c6fdb6c6747d479f58932aae6e900c^{commit}
  export branch_merge
  
 +git rev-parse --verify $branch_merge >/dev/null 2>&1 || {
 +	skip_all='skipping because $branch_merge was not found'
 +	test_done
 +}
 +
  write_script swap-first-two.sh <<\EOF
  case "$1" in
  */COMMIT_EDITMSG)
 diff --git a/t/perf/perf-lib.sh b/t/perf/perf-lib.sh
 index cb88b08..5ef1744 100644
 --- a/t/perf/perf-lib.sh
 +++ b/t/perf/perf-lib.sh
 @@ -80,8 +80,8 @@ test_perf_create_repo_from () {
  	error "bug in the test script: not 2 parameters to test-create-repo"
  	repo="$1"
  	source="$2"
 -	source_git="$(cd "$source" && git rev-parse --git-dir)"
 -	objects_dir="$(cd "$source" && git rev-parse --git-path objects)"
 +	source_git="$(git -C "$source" rev-parse --git-dir)"
 +	objects_dir="$(git -C "$source" rev-parse --git-path objects)"
  	mkdir -p "$repo/.git"
  	(
  		{ cp -Rl "$objects_dir" "$repo/.git/" 2>/dev/null ||
 @@ -96,7 +96,6 @@ test_perf_create_repo_from () {
  			esac
  		done &&
  		cd "$repo" &&
 -		git init -q &&
  		git init -q && {
  			test_have_prereq SYMLINKS ||
  			git config core.symlinks false
-- 
2.8.2.465.gb077790
Previous: Johannes SchindelinNext: Johannes Schindelin
Message 17 of 26 in “Introduce a perf test for interactive rebase”
  1. 0/3 Introduce a perf test for interactive rebaseJohannes Schindelin, May 10, 2016
  2. 1/3 perf: let's disable symlinks on WindowsJohannes Schindelin, May 10, 2016
  3. Junio C HamanoMay 10, 2016
  4. Johannes SchindelinMay 11, 2016
  5. 2/3 perf: make the tests work in worktreesJohannes Schindelin, May 10, 2016
  6. Junio C HamanoMay 10, 2016
  7. Johannes SchindelinMay 11, 2016
  8. 3/3 Add a perf test for rebase -iJohannes Schindelin, May 10, 2016
  9. 0/3 Introduce a perf test for interactive rebaseJohannes Schindelin, May 11, 2016
  10. 3/3 Add a perf test for rebase -iJohannes Schindelin, May 11, 2016
  11. Junio C HamanoMay 11, 2016
  12. Johannes SchindelinMay 13, 2016
  13. 2/3 perf: make the tests work in worktreesJohannes Schindelin, May 11, 2016
  14. Eric SunshineMay 11, 2016
  15. Johannes SchindelinMay 13, 2016
  16. 1/3 perf: let's disable symlinks when they are not availableJohannes Schindelin, May 11, 2016
  17. 0/3 Introduce a perf test for interactive rebaseJohannes Schindelin, May 13, 2016
  18. 1/3 perf: let's disable symlinks when they are not availableJohannes Schindelin, May 13, 2016
  19. 2/3 perf: make the tests work in worktreesJohannes Schindelin, May 13, 2016
  20. René ScharfeMay 29, 2016
  21. Johannes SchindelinMay 30, 2016
  22. Junio C HamanoMay 30, 2016
  23. René ScharfeMay 30, 2016
  24. Junio C HamanoMay 31, 2016
  25. Jeff KingJun 21, 2016
  26. 3/3 Add a perf test for rebase -iJohannes Schindelin, May 13, 2016

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.