Skip to content

Releases: wfxr/forgit

23.09.0

01 Sep 00:20
48e91da
Compare
Choose a tag to compare

Changes since 23.08.1:

  • checkout_branch: support "-" argument (#322)
    git natively supports `-` as an argument to `git switch` and `git
    checkout`. It is shorthand for `@{-1}`, which is a way to refer to the
    last branch you were on.
    forgit used to interpret `-` as a branch name, detect that it does not
    exist yet and create a new one with this name, which does not work.
    Add a check whether `-` is passed on the command line and do not create
    a new branch in this case
  • Fixed opening files in the editor when a path contains spaces or a file was renamed (#323)
    Fixed two issues that occurred when trying to open files in the editor (ctrl+e). In both cases the wrong files were opened.
    1. Files that have spaces in their path. I fixed this by properly escaping the variables used in _forgit_diff() and forgit_add().
    2. When a tracked file was renamed and added, trying to open it in the editor from the diff view, would open a file with a name that consists of both, the old and the new name. I added a separate sed command that can handle this special case.

23.08.1

06 Aug 15:05
b663d22
Compare
Choose a tag to compare

Changes since 23.08.0:

  • Do not hide error messages when trying to return early (#318)
    Most of forgits functions allow to invoke git directly when arguments were passed. In most of these functions we only return early when the git command that is executed returns successfully. This hides error messages from the user. As discussed with @carlfriedrich in #316, I've modified this behavior to also return early when the git command was not successful, so we're transparent about gits error messages and return values. This also fixes an infinite loop printing an error message when invalid arguments were passed to gsp. Because gbl and gclean allow passing arguments to the git command that is invoked when we don't return early, I've modified their behavior to only invoke git directly (and return early) in the case that non flag arguments were passed.
    I've also modified gclean to use the -q flag instead of piping it's output to /dev/null.
  • Removed the note about using forgit as a git subcommand from the 'tips' section (#321)
    The note was redundant because it is explained in more detail in the 'git integration' section.
  • Trigger AUR action on workflow_run instead of release (#320)
    Turns out that GitHub actions do not trigger other actions by default. Using workflow_run instead of release as a trigger should solve this.

23.08.0

01 Aug 00:24
f1ac9e3
Compare
Choose a tag to compare

23.07.0

01 Jul 00:27
c78c10a
Compare
Choose a tag to compare

23.06.0

01 Jun 00:27
665e3fd
Compare
Choose a tag to compare

Changes since 23.05.0:

23.05.0

01 May 00:21
adf4e7f
Compare
Choose a tag to compare

23.04.0

01 Apr 00:21
3f00348
Compare
Choose a tag to compare

Changes since 23.03.0:

  • Detect unexported variables in fish correctly (#290)
    Fixes #289
  • Only show available cherry picks in preview (#293)
    This is a follow-up to #266, which already switched to showing only
    available commits during cherry-picking. This patch does the same for
    the branch preview in _forgit_cherry_pick_from_branch.
  • Fix broken cherry picking (#294)
    With the changes of #261 and #266 we accidentally broke the return value
    of `_forgit_cherry_pick`, which led to the loop in
    `_forgit_cherry_pick_from_branch` being terminated in the wrong cases.
    Fix this by moving all the post processing after fzf to a later call.
    Also simplify the array population using a single line instead of a
    loop.
    This should also fix #286 ("fatal: bad revision ''").
  • Add git options for each forgit command (#292)
    The git behavior within forgit can now be customized with a dedicated
    variable for each forgit command, e.g. `FORGIT_ADD_GIT_OPTS` is passed
    to the `git add` call within `ga`.
    Also renaming `FORGIT_STASH_PUSH_OPTS` to `FORGIT_STASH_PUSH_FZF_OPTS`
    and `FORGIT_REVERT_COMMIT_OPTS` to `FORGIT_REVERT_COMMIT_FZF_OPTS`
    for consistency.
  • Fix git options (#296)
    Adding options to a command in a quoted variable as introduced in #292
    causes problems in several cases unfortunately (e.g. git rebase
    interpreting an empty string argument as a remote, which leads to an
    error "unknown upstream ''").
    Change the implementation in a way that each git command is stored in a
    shell variable, including the options, which is then evaluated.
    This also makes the code more DRY because each git options variable is
    evaluated only once.
    Furthermore, fix temporary IFS settings. When setting the IFS for a
    certain command only, the command must not be an assignment, otherwise
    both assignments are evaluated permanently
    (see https://unix.stackexchange.com/a/458901/317320).
  • Fix temporary IFS settings (#297)
    When setting the IFS for a certain command only, the command must not be
    an assignment, otherwise both assignments are evaluated permanently
    (see https://unix.stackexchange.com/a/458901/317320).
  • Add keybinding ctrl+y for copying stash ID in gss (#295)

23.03.0

01 Mar 00:25
8012396
Compare
Choose a tag to compare

Changes since 23.02.0:

  • Fix empty diff preview on renames (#282)
    This had been fixed before in #189, but obviously the patch broke
    support for whitespaces in file names. That was fixed in #204, which
    in turn broke support for renames again.
    Prepare the list of file names with the null-character \0 as a delimiter,
    so that we can use "xargs -0" to read it. This makes renames as well
    as filenames with spaces work correctly.

23.02.0

01 Feb 00:24
aa85792
Compare
Choose a tag to compare

Changes since 23.01.0:

23.01.0

01 Jan 00:22
ffda73b
Compare
Choose a tag to compare

Changes since 22.12.0: