1. 21 Oct, 2018 1 commit
  2. 15 Oct, 2018 1 commit
    • Jonas Bernoulli's avatar
      Require magit-submodule when loading magit · 2caa0390
      Jonas Bernoulli authored
      The keymap for the `module' section type is defined in
      `magit-submodule' and used by a section inserter in `magit'.  Due to
      how `magit-insert-section' uses section keymaps we cannot rely on the
      variable being autoloaded - calling `boundp' does not trigger the
      library that defines the autoloaded variable to be loaded.
      
      Fixes #3618.
      2caa0390
  3. 15 Sep, 2018 1 commit
    • Jonas Bernoulli's avatar
      magit-section-value-if: New function · 60965842
      Jonas Bernoulli authored
      This replaces `magit-section-when', which could also be used like
      `magit-section-value-if' but also supported other use-case, which
      was rather weird.
      
      Also deprecate `magit-section-when'.
      60965842
  4. 14 Sep, 2018 1 commit
  5. 07 Aug, 2018 1 commit
    • Jonas Bernoulli's avatar
      Require at least Git 2.0.0 · 61f9b040
      Jonas Bernoulli authored
      In da854448 we started using
      `--no-gpg-sign', which didn't exist in Git versions before 2.0.0.
      Since that was two years ago and nobody noticed until #3544, I am just
      bumping the minimal version on "master" without adding a kludge on the
      "maint" branch.  Stashing and the wip modes won't work with Git 1.9.4,
      but other things should continue to work just as well as they did for
      the last two years.
      
      As announced earlier the next Magit release will likely require even
      Git 2.4.0.
      61f9b040
  6. 20 Jul, 2018 1 commit
    • Jonas Bernoulli's avatar
      Unset $GIT_{DIR,WORK_TREE} when loading magit · 2d7d5d84
      Jonas Bernoulli authored
      Setting these environment variables for an emacs instance is a recipe
      for disaster.  The problem is that environment variables are shared
      across all of Emacs, so every buffer shares the same values.
      
      Unfortunately git commit does export $GIT_DIR before calling $EDITOR,
      leading to issues such as #3516, so Magit now unsets that variable
      and $GIT_WORK_TREE if they are set when `magit' is loaded.
      2d7d5d84
  7. 14 Jul, 2018 1 commit
  8. 16 Jun, 2018 2 commits
  9. 04 Jun, 2018 1 commit
  10. 06 May, 2018 1 commit
  11. 22 Apr, 2018 1 commit
  12. 08 Apr, 2018 1 commit
  13. 15 Feb, 2018 2 commits
  14. 03 Feb, 2018 1 commit
  15. 02 Feb, 2018 3 commits
  16. 01 Feb, 2018 1 commit
  17. 30 Jan, 2018 1 commit
  18. 24 Jan, 2018 1 commit
    • Jonas Bernoulli's avatar
      magit-confirm: Fix regression · 42c22614
      Jonas Bernoulli authored
      Unfortunately doing so means changing the function signature in a way
      that is not backward compatible.
      
      This function relies on being able to tell whether ITEMS is nil
      because that argument was not provided or because an empty list was
      provided as its value.  In the former case the action still has to be
      confirmed in the latter case it does not because there is nothing to
      act on.
      
      So the `(items nil sitems)' argument has to be last but in d6420549
      I added a new argument NOCONFIRM after it.
      
      Fixes #3341.
      42c22614
  19. 23 Jan, 2018 1 commit
  20. 18 Jan, 2018 4 commits
  21. 17 Jan, 2018 1 commit
  22. 07 Jan, 2018 1 commit
  23. 17 Dec, 2017 1 commit
  24. 08 Dec, 2017 1 commit
    • Jonas Bernoulli's avatar
      make: generate magit-pkg.el · 29ae3b58
      Jonas Bernoulli authored
      If the dependencies are defined in the main library using
      the "Package-Requires" header keyword, then the value has
      to be provided on a single line.  I detest long lines.
      29ae3b58
  25. 07 Dec, 2017 1 commit
  26. 21 Nov, 2017 1 commit
    • Jonas Bernoulli's avatar
      magit-notes-popup: display relevant variables · 84824c59
      Jonas Bernoulli authored
      Show the global values in addition to the local values.
      
      Remove the old commands that were used to set these variables with
      new commands that are consistent with the respective commands used
      in other popup.
      
      Closes #2857.
      84824c59
  27. 20 Nov, 2017 1 commit
  28. 15 Nov, 2017 1 commit
    • Jonas Bernoulli's avatar
      Combine related refs when displaying them in logs · d87e0c6a
      Jonas Bernoulli authored
      For example, when the push-target of a local branch BRANCH
      is REMOTE/BRANCH, then display REMOTE/BRANCH
                                     [green][blue]
      instead of BRANCH REMOTE/BRANCH
                 [blue] [green------]
      
      That does not only preserve space, it also informs the user
      that REMOTE/BRANCH is the push-target of BRANCH.
      
      If a remote branch is that remote's HEAD, then put a box
      around it, like it was already done for the local HEAD.
      
      Order the refs by type: bisect state, current branch, tags,
      local branches, remote branches, other refs
      
      Closes #2923.
      d87e0c6a
  29. 09 Nov, 2017 1 commit
    • Jonas Bernoulli's avatar
      magit-dwim-selection: new option · 64059d31
      Jonas Bernoulli authored
      `magit-invoke-popup-action' is adjusted to set `this-command' to the
      invoked command before calling instead of after doing so.  Without
      this change `this-command's value would be wrong when consulting it
      in `magit-completing-read' when the command was invoked form a popup.
      
      Also deprecate the option `magit-no-confirm-default', which will be
      removed in v2.13.0.
      
      Re #2916.
      
      squash! magit-dwim-selection: new option
      64059d31
  30. 03 Nov, 2017 1 commit
  31. 02 Nov, 2017 1 commit
    • Jonas Bernoulli's avatar
      Support one-section magit-selections · 115041d4
      Jonas Bernoulli authored
      For a long time Magit supported selecting two or more sibling sections
      using the region and then acting on that selection instead of only on
      the current section.  Single-section selections were not supported and
      a region that did not span multiple siblings was not visualized as a
      selection, instead the underlying region was visualized as it is in
      non-magit buffers.
      
      The change users will notice first is that when they press C-SPC to
      set the beginning of the region/magit-selection on a section heading,
      then the magit-selection is visualized.  Previously not even the
      region was shown after just pressing C-SPC, because the mark and the
      point were identical, so there was no non-empty region to visualize.
      
      For the time being most commands continue to behave exactly as before
      when there is a one-section selection: the act on the current section
      instead.  While a one-section selection is a selection that contains
      nothing but the current section, this difference between the current
      section and a set consisting of only the current section is still
      relevant.  It affects whether and how commands ask for confirmation
      and/or offer the user to act on something else instead.
      
      The reason I decided against supporting one-section selections in the
      past is that it is a bit unfortunate to visualize the selection and
      then the invoked command does not actually use it.  But this is no
      different from a multi-section selection being visualized and then
      invoking a command that isn't magit-selection aware at all.  Or from
      having the region visualized in any Emacs buffer and then invoking any
      command that doesn't behave differently when the region is active.
      
      Beginning with this commit only a handful of commands begin using a
      one-section selection.  Most importantly, and this is what motivated
      this change, it is now possible to use `magit-branch-spinoff' after
      selecting just HEAD to create a new branch rewinding the previously
      current branch by a single commit.  Previously it was only possible
      to rewind it to its upstream or to rewind it by at least two commits.
      
      The other commands that respect one-section selections are:
      - magit-am-apply-patches
      - magit-cherry-apply
      - magit-cherry-pick
      - magit-revert
      - magit-revert-no-commit
      - magit-stash-drop
      - magit-tag-delete
      
      The recently added commands `magit-previous-line' and
      `magit-next-line' now forgo moving on the first shift-selection move
      when point is on a section heading, not just when inside a hunk body.
      
      Closes #2920.
      Closes #3026.
      115041d4
  32. 30 Oct, 2017 1 commit
  33. 26 Oct, 2017 1 commit