1. 05 Nov, 2017 1 commit
    • Jonas Bernoulli's avatar
      magit-commit-diff: never give up · d25fb656
      Jonas Bernoulli authored
      Fallback to the same base logic as `magit-diff-while-committing' to
      decide what diff to display instead of giving up when we don't know
      what diff to display based on `last-command'.
      
      We cannot use that function, because if we did then we might end up
      toggling to the "other diff" if the diff buffer already exists.
      
      The "unrecord" and "abort" logic have be moved to the "outside".
      d25fb656
  2. 23 Oct, 2017 1 commit
  3. 11 Oct, 2017 4 commits
  4. 07 Oct, 2017 3 commits
  5. 09 Aug, 2017 1 commit
  6. 11 Jul, 2017 1 commit
    • Kyle Meyer's avatar
      magit-commit-popup: add custom reader for --reuse-message · 9eb60c0c
      Kyle Meyer authored
      As mentioned in git-reset's manpage, ORIG_HEAD can be useful for
      undoing a commit and reusing its message (though there are of course
      other ways to do this).  Define a reader for the --reuse-message
      option that offers ORIG_HEAD as the default value when it exists.
      
      Also, prompt with all ref names.  If these aren't useful for the given
      situation, the user can ignore them and enter an arbitrary value.
      
      Closes #3110.
      9eb60c0c
  7. 10 Jun, 2017 1 commit
  8. 12 Mar, 2017 1 commit
  9. 05 Feb, 2017 1 commit
  10. 19 Jan, 2017 1 commit
    • Jonas Bernoulli's avatar
      While committing, diff from inside gitdir if necessary · 9e0e2a24
      Jonas Bernoulli authored
      If a repository is created using `git init --separate-git-dir', then
      that does not set `core.worktree' (unlike what `git submodule' does).
      
      When committing inside such a repository `magit-commit-diff' is run
      inside the gitdir, and there is no way to prevent that.  Luckily `git
      diff' also works inside the gitdir, but because many other commands
      don't, we always run everything in the working tree.
      
      This is fairly deeply ingrained, so we have to add a kludge to
      `magit-toplevel', that causes it to return the gitdir instead,
      and that is triggered by dynamically binding the new variable
      `magit-toplevel--force-fallback-to-gitdir' to a non-nil value.
      
      And `magit-commit-diff' now does so to fix #2955.
      9e0e2a24
  11. 04 Jan, 2017 1 commit
  12. 29 Dec, 2016 3 commits
  13. 27 Dec, 2016 1 commit
  14. 22 Dec, 2016 1 commit
    • Jonas Bernoulli's avatar
      Place magit-{*}-arguments in new magit-git-arguments group · 33c5c1ca
      Jonas Bernoulli authored
      Most options named `magit-TOPIC-arguments' specify the arguments
      that are enabled by default in the respective `magit-TOPIC-popup'.
      Previously most of these options were placed in the `magit-commands'
      Custom group, which made that group rather noisy.  A few were placed
      in others group, which was inconsistent and in most cases an oversight.
      
      To avoid having to specify the group for each and every popup defined
      in Magit and in third-party extensions that share the "magit-" prefix,
      teach `magit-define-popup' to use `magit-git-arguments' if GROUP isn't
      specified and NAME does begin with "magit-".
      
      Also place `magit-git-global-arguments' into this group.  Remove it
      from `magit', but keep it in `magit-process' as before.
      33c5c1ca
  15. 20 Nov, 2016 1 commit
  16. 08 Oct, 2016 1 commit
  17. 24 Sep, 2016 1 commit
  18. 07 Sep, 2016 1 commit
  19. 11 May, 2016 1 commit
    • Jonas Bernoulli's avatar
      magit-commit-diff: make sure diff buffer doesn't replace message buffer · c1e0de86
      Jonas Bernoulli authored
      When the window that just began displaying the commit buffer previously
      displayed the diff buffer, then displaying that buffer again would
      likely be done by displayed in that same window, causing the commit
      message buffer would no longer be displayed anywhere.  Prevent that by
      removing the diff buffer from the window's list of previously displayed
      buffers.
      
      Also remove the kludge in `magit-display-buffer-traditionally', which
      was also supposed to deal with this issue.
      c1e0de86
  20. 21 Apr, 2016 1 commit
    • Jonas Bernoulli's avatar
      magit-commit-squash-internal: commit synchronously before rebase · f6601b3c
      Jonas Bernoulli authored
      Previously it was possible for the commit process to still hold the lock
      on index.lock, when the rebase process was trying to acquire it.  Now we
      run the commit process synchronously if we are going to also rebase, and
      we also forgo refreshing between the two processes.  If we don't rebase,
      then still commit asynchronously and refresh.
      f6601b3c
  21. 02 Mar, 2016 2 commits
  22. 23 Feb, 2016 2 commits
  23. 19 Feb, 2016 1 commit
  24. 14 Feb, 2016 1 commit
    • Jonas Bernoulli's avatar
      magit-commit-diff: allow local quit to terminate diffing · 4a30fd88
      Jonas Bernoulli authored
      without also aborting the commit.  This is useful when committing
      unusually large changes.  Quitting causes the diff buffer to be
      partially unwashed.
      
      Do not use `with-local-quit' because that would be propagated to
      the `with-local-quit' in `server-execute', which would cause the
      commit to be aborted instead of just the diffing.
      4a30fd88
  25. 01 Jan, 2016 1 commit
  26. 08 Dec, 2015 3 commits
  27. 11 Nov, 2015 1 commit
  28. 13 Oct, 2015 2 commits
    • Jonas Bernoulli's avatar
      respect popup arguments when creating a fixup commit · 861abc0b
      Jonas Bernoulli authored
      Fixes #2339.
      861abc0b
    • Jonas Bernoulli's avatar
      magit-commit-show-diff: new option · 112b0eb0
      Jonas Bernoulli authored
      Add new option `magit-commit-show-diff' to control whether a diff for
      the relevant changes is shown while.  A value of `t' has the same effect
      as `commit' and `log-select' being members of `magit-diff-auto-show' had.
      
      Also add a third value, `verbose', to the option `magit-commit-ask-stage',
      as a subsitute for the old `magit-commit-show-diff' member `stage-all'.
      112b0eb0