Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: gitpython-developers/GitPython
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 3.1.50
Choose a base ref
...
head repository: gitpython-developers/GitPython
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref
  • 12 commits
  • 4 files changed
  • 7 contributors

Commits on May 6, 2026

  1. Add AI-disclusure and quality requirements to the contribution guidel…

    …ines.
    
    Co-authored-by: GPT 5.5 <codex@openai.com>
    Byron and codex committed May 6, 2026
    Configuration menu
    Copy the full SHA
    4941c31 View commit details
    Browse the repository at this point in the history
  2. Separate quality paragraphs and adjust decline wording

    Split the quality-expectations section into two paragraphs (the warning
    about low-quality contributions being declined was visually merged with
    the preceding paragraph). Replace "and the pull request closed without
    warning" with a note that maintainers may not always be able to provide
    detailed feedback, which conveys the same practical reality.
    
    Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
    EliahKagan and claude committed May 6, 2026
    Configuration menu
    Copy the full SHA
    92ff6df View commit details
    Browse the repository at this point in the history
  3. Merge pull request #2143 from gitpython-developers/contrbuting

    Add AI-disclosure and quality requirements to the contribution guidelines
    Byron authored May 6, 2026
    Configuration menu
    Copy the full SHA
    c7648c0 View commit details
    Browse the repository at this point in the history

Commits on May 7, 2026

  1. docs(cmd): clarify Git.execute() string vs list command argument

    Closes #2016
    
    Users routinely hit GitCommandNotFound by passing a single string with
    spaces to repo.git.execute(...). With shell=False (default) subprocess
    treats the entire string as the executable name and fails. Document the
    recommended list form, the string-as-single-executable behavior, and the
    two ways to coerce a string into argv tokens (shlex.split or shell=True).
    mvanhorn committed May 7, 2026
    Configuration menu
    Copy the full SHA
    d172e54 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #2144 from mvanhorn/osc/2016-clarify-execute-strin…

    …g-arg
    
    docs(cmd): clarify Git.execute() string vs list command argument
    Byron authored May 7, 2026
    Configuration menu
    Copy the full SHA
    7b83f7a View commit details
    Browse the repository at this point in the history

Commits on May 10, 2026

  1. Rewrite Git.execute() command parameter docstring per #2146

    #2146 identifies two factual problems in #2144's `:param command:`
    rewrite, both of which this fixes:
    
    1. The claim that with `shell=False` a string "is passed as a single
       executable name to `subprocess.Popen`" is accurate on Unix-like
       systems, but on Windows `subprocess.Popen` forwards the string to
       `CreateProcessW` and Windows command-line parsing produces argv.
       So multi-word strings happen to work on Windows -- which makes
       the docstring misleading for Windows readers and unhelpful for
       anyone whose actual problem is portability.
    
    2. The blanket recommendation to use `shlex.split` read as a general
       string-to-argv splitter. `shlex.split` parses POSIX shell syntax
       on all systems, and the resulting tokens are still unsafe for
       anything but fixed, fully trusted strings -- in particular,
       strings built by interpolating values can still inject extra
       arguments via embedded whitespace or quoting.
    
    Restructure `:param command:` into four paragraphs (description,
    platform-specific string handling, `shell=True` / `Git.USE_SHELL`
    warning, qualified `shlex.split` note) and cross-reference
    `USE_SHELL` for the long-form security discussion rather than
    reproducing it.
    
    Add a related paragraph to `:param shell:` noting `shlex.split`'s
    narrow value as a transitional tool when migrating existing
    string-command `shell=True` calls on Unix-like systems, with extreme
    care, and cross-referencing `:param command:` for the risks.
    
    This fixes #2146. Only documentation is changed.
    
    Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
    EliahKagan and claude committed May 10, 2026
    Configuration menu
    Copy the full SHA
    010a7bb View commit details
    Browse the repository at this point in the history
  2. Word shell mention of shlex.split more carefully

    To avert the mistake of not removing `shell=True` when using it.
    
    Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
    Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
    3 people committed May 10, 2026
    Configuration menu
    Copy the full SHA
    38d62c4 View commit details
    Browse the repository at this point in the history
  3. Merge pull request #2147 from EliahKagan/claude/execute-string-platfo…

    …rm-docs
    
    Rewrite Git.execute() command parameter docstring per #2146
    EliahKagan authored May 10, 2026
    Configuration menu
    Copy the full SHA
    830471c View commit details
    Browse the repository at this point in the history
  4. Document init script behavior when multiple remotes have master

    When `master` is locally absent and more than one remote has it,
    `git checkout master --` fails by default even if all remotes
    agree, and the script falls back to creating `master` at `HEAD`.
    The reflog populated by the subsequent resets then traces `HEAD`'s
    history rather than a remote `master`'s. This is harmless, because
    `master` is reset to `__testing_point__` either way, but unintuitive.
    
    Add a comment so a reader of the script does not have to discover
    this from a confusing run.
    
    This fixes #2145.
    
    Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
    EliahKagan and claude committed May 10, 2026
    Configuration menu
    Copy the full SHA
    0c1e409 View commit details
    Browse the repository at this point in the history
  5. Merge pull request #2148 from EliahKagan/claude/gifted-booth-e5e2b4

    Document init script behavior with multiple master remotes
    EliahKagan authored May 10, 2026
    Configuration menu
    Copy the full SHA
    acb6d56 View commit details
    Browse the repository at this point in the history
  6. Bump git/ext/gitdb from 335c0f6 to 0a019a2

    Bumps [git/ext/gitdb](https://github.com/gitpython-developers/gitdb) from `335c0f6` to `0a019a2`.
    - [Release notes](https://github.com/gitpython-developers/gitdb/releases)
    - [Commits](gitpython-developers/gitdb@335c0f6...0a019a2)
    
    ---
    updated-dependencies:
    - dependency-name: git/ext/gitdb
      dependency-version: 0a019a2e2bd73158cf8b637ad78b5d4b8f15e42e
      dependency-type: direct:production
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    dependabot[bot] authored May 10, 2026
    Configuration menu
    Copy the full SHA
    465f1d5 View commit details
    Browse the repository at this point in the history
  7. Merge pull request #2149 from gitpython-developers/dependabot/submodu…

    …les/git/ext/gitdb-0a019a2
    
    Bump git/ext/gitdb from `335c0f6` to `0a019a2`
    EliahKagan authored May 10, 2026
    Configuration menu
    Copy the full SHA
    e196f44 View commit details
    Browse the repository at this point in the history
Loading