summaryrefslogtreecommitdiff
path: root/elpa/magit-20190902.1343/magit-patch.el
diff options
context:
space:
mode:
authorblendoit <blendoit@gmail.com>2019-09-03 19:31:14 -0700
committerblendoit <blendoit@gmail.com>2019-09-03 19:31:14 -0700
commit9282e3afc2bcfbc2fe905a62ba5e03f7f019f46f (patch)
tree34b3df5ff601b78bd575a4992af77aa17db838f4 /elpa/magit-20190902.1343/magit-patch.el
parent85f9213626a7230a3b5ca8d101c2e3181d06e07a (diff)
remove personal files
Diffstat (limited to 'elpa/magit-20190902.1343/magit-patch.el')
-rw-r--r--elpa/magit-20190902.1343/magit-patch.el267
1 files changed, 0 insertions, 267 deletions
diff --git a/elpa/magit-20190902.1343/magit-patch.el b/elpa/magit-20190902.1343/magit-patch.el
deleted file mode 100644
index 95e3e56..0000000
--- a/elpa/magit-20190902.1343/magit-patch.el
+++ /dev/null
@@ -1,267 +0,0 @@
-;;; magit-patch.el --- creating and applying patches -*- lexical-binding: t -*-
-
-;; Copyright (C) 2008-2019 The Magit Project Contributors
-;;
-;; You should have received a copy of the AUTHORS.md file which
-;; lists all contributors. If not, see http://magit.vc/authors.
-
-;; Author: Jonas Bernoulli <jonas@bernoul.li>
-;; Maintainer: Jonas Bernoulli <jonas@bernoul.li>
-
-;; Magit is free software; you can redistribute it and/or modify it
-;; under the terms of the GNU General Public License as published by
-;; the Free Software Foundation; either version 3, or (at your option)
-;; any later version.
-;;
-;; Magit is distributed in the hope that it will be useful, but WITHOUT
-;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
-;; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
-;; License for more details.
-;;
-;; You should have received a copy of the GNU General Public License
-;; along with Magit. If not, see http://www.gnu.org/licenses.
-
-;;; Commentary:
-
-;; This library implements patch commands.
-
-;;; Code:
-
-(eval-when-compile
- (require 'subr-x))
-
-(require 'magit)
-
-;;; Options
-
-(defcustom magit-patch-save-arguments '(exclude "--stat")
- "Control arguments used by the command `magit-patch-save'.
-
-`magit-patch-save' (which see) saves a diff for the changes
-shown in the current buffer in a patch file. It may use the
-same arguments as used in the buffer or a subset thereof, or
-a constant list of arguments, depending on this option and
-the prefix argument."
- :package-version '(magit . "2.12.0")
- :group 'magit-diff
- :type '(choice (const :tag "use buffer arguments" buffer)
- (cons :tag "use buffer arguments except"
- (const :format "" exclude)
- (repeat :format "%v%i\n"
- (string :tag "Argument")))
- (repeat :tag "use constant arguments"
- (string :tag "Argument"))))
-
-;;; Commands
-
-;;;###autoload (autoload 'magit-patch "magit-patch" nil t)
-(define-transient-command magit-patch ()
- "Create or apply patches."
- ["Actions"
- ("c" "Create patches" magit-patch-create)
- ("a" "Apply patch" magit-patch-apply)
- ("s" "Save diff as patch" magit-patch-save)
- ("r" "Request pull" magit-request-pull)])
-
-;;;###autoload (autoload 'magit-patch-create "magit-patch" nil t)
-(define-transient-command magit-patch-create (range args files)
- "Create patches for the commits in RANGE.
-When a single commit is given for RANGE, create a patch for the
-changes introduced by that commit (unlike 'git format-patch'
-which creates patches for all commits that are reachable from
-`HEAD' but not from the specified commit)."
- :man-page "git-format-patch"
- ["Mail arguments"
- (magit-format-patch:--in-reply-to)
- (magit-format-patch:--thread)
- (magit-format-patch:--reroll-count)
- (magit-format-patch:--subject-prefix)
- ("C-m l " "Add cover letter" "--cover-letter")
- (magit-format-patch:--from)
- (magit-format-patch:--to)
- (magit-format-patch:--cc)
- (magit-format-patch:--output-directory)]
- ["Diff arguments"
- (magit-diff:-U)
- (magit-diff:-M)
- (magit-diff:-C)
- (magit-diff:--diff-algorithm)
- (magit:--)
- (7 "-b" "Ignore whitespace changes" ("-b" "--ignore-space-change"))
- (7 "-w" "Ignore all whitespace" ("-w" "--ignore-all-space"))]
- ["Actions"
- ("c" "Create patches" magit-patch-create)]
- (interactive
- (if (not (eq current-transient-command 'magit-patch-create))
- (list nil nil nil)
- (cons (if-let ((revs (magit-region-values 'commit t)))
- (concat (car (last revs)) "^.." (car revs))
- (let ((range (magit-read-range-or-commit
- "Format range or commit")))
- (if (string-match-p "\\.\\." range)
- range
- (format "%s~..%s" range range))))
- (let ((args (transient-args 'magit-patch-create)))
- (list (-filter #'stringp args)
- (cdr (assoc "--" args)))))))
- (if (not range)
- (transient-setup 'magit-patch-create)
- (magit-run-git "format-patch" range args "--" files)
- (when (member "--cover-letter" args)
- (save-match-data
- (find-file
- (expand-file-name
- (concat (--some (and (string-match "\\`--reroll-count=\\(.+\\)" it)
- (format "v%s-" (match-string 1 it)))
- args)
- "0000-cover-letter.patch")
- (let ((topdir (magit-toplevel)))
- (or (--some (and (string-match "\\`--output-directory=\\(.+\\)" it)
- (expand-file-name (match-string 1 it) topdir))
- args)
- topdir))))))))
-
-(define-infix-argument magit-format-patch:--in-reply-to ()
- :description "In reply to"
- :class 'transient-option
- :key "C-m r "
- :argument "--in-reply-to=")
-
-(define-infix-argument magit-format-patch:--thread ()
- :description "Thread style"
- :class 'transient-option
- :key "C-m s "
- :argument "--thread=")
-
-(define-infix-argument magit-format-patch:--reroll-count ()
- :description "Reroll count"
- :class 'transient-option
- :key "C-m v "
- :shortarg "-v"
- :argument "--reroll-count="
- :reader 'transient-read-number-N+)
-
-(define-infix-argument magit-format-patch:--subject-prefix ()
- :description "Subject Prefix"
- :class 'transient-option
- :key "C-m p "
- :argument "--subject-prefix=")
-
-(define-infix-argument magit-format-patch:--from ()
- :description "From"
- :class 'transient-option
- :key "C-m C-f"
- :argument "--from="
- :reader 'magit-transient-read-person)
-
-(define-infix-argument magit-format-patch:--to ()
- :description "To"
- :class 'transient-option
- :key "C-m C-t"
- :argument "--to="
- :reader 'magit-transient-read-person)
-
-(define-infix-argument magit-format-patch:--cc ()
- :description "CC"
- :class 'transient-option
- :key "C-m C-c"
- :argument "--cc="
- :reader 'magit-transient-read-person)
-
-(define-infix-argument magit-format-patch:--output-directory ()
- :description "Output directory"
- :class 'transient-option
- :key "C-m o "
- :shortarg "-o"
- :argument "--output-directory="
- :reader 'transient-read-existing-directory)
-
-;;;###autoload (autoload 'magit-patch-apply "magit-patch" nil t)
-(define-transient-command magit-patch-apply (file &rest args)
- "Apply the patch file FILE."
- :man-page "git-apply"
- ["Arguments"
- ("-i" "Also apply to index" "--index")
- ("-c" "Only apply to index" "--cached")
- ("-3" "Fall back on 3way merge" ("-3" "--3way"))]
- ["Actions"
- ("a" "Apply patch" magit-patch-apply)]
- (interactive
- (if (not (eq current-transient-command 'magit-patch-apply))
- (list nil)
- (list (expand-file-name
- (read-file-name "Apply patch: "
- default-directory nil nil
- (when-let ((file (magit-file-at-point)))
- (file-relative-name file))))
- (transient-args 'magit-patch-apply))))
- (if (not file)
- (transient-setup 'magit-patch-apply)
- (magit-run-git "apply" args "--" (magit-convert-filename-for-git file))))
-
-;;;###autoload
-(defun magit-patch-save (file &optional arg)
- "Write current diff into patch FILE.
-
-What arguments are used to create the patch depends on the value
-of `magit-patch-save-arguments' and whether a prefix argument is
-used.
-
-If the value is the symbol `buffer', then use the same arguments
-as the buffer. With a prefix argument use no arguments.
-
-If the value is a list beginning with the symbol `exclude', then
-use the same arguments as the buffer except for those matched by
-entries in the cdr of the list. The comparison is done using
-`string-prefix-p'. With a prefix argument use the same arguments
-as the buffer.
-
-If the value is a list of strings (including the empty list),
-then use those arguments. With a prefix argument use the same
-arguments as the buffer.
-
-Of course the arguments that are required to actually show the
-same differences as those shown in the buffer are always used."
- (interactive (list (read-file-name "Write patch file: " default-directory)
- current-prefix-arg))
- (unless (derived-mode-p 'magit-diff-mode)
- (user-error "Only diff buffers can be saved as patches"))
- (let ((rev magit-buffer-range)
- (typearg magit-buffer-typearg)
- (args magit-buffer-diff-args)
- (files magit-buffer-diff-files))
- (cond ((eq magit-patch-save-arguments 'buffer)
- (when arg
- (setq args nil)))
- ((eq (car-safe magit-patch-save-arguments) 'exclude)
- (unless arg
- (setq args (-difference args (cdr magit-patch-save-arguments)))))
- ((not arg)
- (setq args magit-patch-save-arguments)))
- (with-temp-file file
- (magit-git-insert "diff" rev "-p" typearg args "--" files)))
- (magit-refresh))
-
-;;;###autoload
-(defun magit-request-pull (url start end)
- "Request upstream to pull from you public repository.
-
-URL is the url of your publically accessible repository.
-START is a commit that already is in the upstream repository.
-END is the last commit, usually a branch name, which upstream
-is asked to pull. START has to be reachable from that commit."
- (interactive
- (list (magit-get "remote" (magit-read-remote "Remote") "url")
- (magit-read-branch-or-commit "Start" (magit-get-upstream-branch))
- (magit-read-branch-or-commit "End")))
- (let ((dir default-directory))
- ;; mu4e changes default-directory
- (compose-mail)
- (setq default-directory dir))
- (message-goto-body)
- (magit-git-insert "request-pull" start url end)
- (set-buffer-modified-p nil))
-
-;;; _
-(provide 'magit-patch)
-;;; magit-patch.el ends here
Copyright 2019--2024 Marius PETER