[ SEA-GHOST MINI SHELL]

Path : /usr/share/doc/git-1.8.3.1/contrib/emacs/
FILE UPLOADER :
Current File : //usr/share/doc/git-1.8.3.1/contrib/emacs/git.elc

;ELC
;;; Compiled by mockbuild@buildfarm04-new.corp.cloudlinux.com on Tue Jul 30 09:13:05 2024
;;; from file /builddir/build/BUILD/git-1.8.3.1/contrib/emacs/git.el
;;; in Emacs version 24.3.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\210\300\302!\210\300\303!\210\304\305\306\307\310\311%\210\312\313\306\314\310\305\315\316&\210\312\317\306\320\310\305\315\321&\210\312\322\306\323\310\305\315\324&\210\312\325\306\326\310\305\315\327&\210\312\330\331\332\310\305\315\327&\210\312\333\334\335\310\305\315\336&\210\312\337\306\340\310\305\315\327&\210\312\341\306\342\310\305\315\327&\210\312\343\331\344\310\305\315\327&\210\345\346\347\350\310\305%\210\345\351\352\353\310\305%\210\345\354\355\356\310\305%\210\345\357\360\361\310\305%\210\345\362\363\364\310\305%\210\345\365\366\367\310\305%\210\345\370\371\372\310\305%\210\345\373\374\375\310\305%\210\345\376\377\201@\310\305%\207" [require ewoc log-edit easymenu custom-declare-group git nil "A user interface for the git versioning system." :group tools custom-declare-variable git-committer-name "User name to use for commits.\nThe default is to fall back to the repository config,\nthen to `add-log-full-name' and then to `user-full-name'." :type (choice (const :tag "Default" nil) (string :tag "Name")) git-committer-email "Email address to use for commits.\nThe default is to fall back to the git repository config,\nthen to `add-log-mailing-address' and then to `user-mail-address'." (choice (const :tag "Default" nil) (string :tag "Email")) git-commits-coding-system "Default coding system for the log message of git commits." (choice (const :tag "From repository config" nil) (coding-system)) git-append-signed-off-by "Whether to append a Signed-off-by line to the commit message before editing." boolean git-reuse-status-buffer t "Whether `git-status' should try to reuse an existing buffer\nif there is already one that displays the same directory." git-per-dir-ignore-file ".gitignore" "Name of the per-directory ignore file." string git-show-uptodate "Whether to display up-to-date files." git-show-ignored "Whether to display ignored files." git-show-unknown "Whether to display unknown files." custom-declare-face git-status-face ((((class color) (background light)) (:foreground "purple")) (((class color) (background dark)) (:foreground "salmon"))) "Git mode face used to highlight added and modified files." git-unmerged-face ((((class color) (background light)) (:foreground "red" :bold t)) (((class color) (background dark)) (:foreground "red" :bold t))) "Git mode face used to highlight unmerged files." git-unknown-face ((((class color) (background light)) (:foreground "goldenrod" :bold t)) (((class color) (background dark)) (:foreground "goldenrod" :bold t))) "Git mode face used to highlight unknown files." git-uptodate-face ((((class color) (background light)) (:foreground "grey60")) (((class color) (background dark)) (:foreground "grey40"))) "Git mode face used to highlight up-to-date files." git-ignored-face ((((class color) (background light)) (:foreground "grey60")) (((class color) (background dark)) (:foreground "grey40"))) "Git mode face used to highlight ignored files." git-mark-face ((((class color) (background light)) (:foreground "red" :bold t)) (((class color) (background dark)) (:foreground "tomato" :bold t))) "Git mode face used for the file marks." git-header-face ((((class color) (background light)) (:foreground "blue")) (((class color) (background dark)) (:foreground "blue"))) "Git mode face used for commit headers." git-separator-face ((((class color) (background light)) (:foreground "brown")) (((class color) (background dark)) (:foreground "brown"))) "Git mode face used for commit separator." git-permission-face ((((class color) (background light)) (:foreground "green" :bold t)) (((class color) (background dark)) (:foreground "green" :bold t))) "Git mode face used for permission changes."] 8)
(defconst git-log-msg-separator "--- log message follows this line ---")
(defvar git-log-edit-font-lock-keywords (byte-code "\301\302\303!\304Q\305BD\207" [git-log-msg-separator ("^\\(Author:\\|Date:\\|Merge:\\|Signed-off-by:\\)\\(.*\\)$" (1 font-lock-keyword-face) (2 font-lock-function-name-face)) "^\\(" regexp-quote "\\)$" ((1 font-lock-comment-face))] 4))
#@72 Build a list of NAME=VALUE strings from a list of environment strings.
(defalias 'git-get-env-strings #[(env) "\301\302\"\207" [env mapcar #[(entry) "@\301AQ\207" [entry "="] 3]] 3 (#$ . 4633)])
#@57 Wrapper for call-process that sets environment strings.
(defalias 'git-call-process #[(buffer &rest args) "\302\303\304\305\305	&\207" [buffer args apply call-process "git" nil] 7 (#$ . 4837)])
#@56 Wrapper for call-process that displays error messages.
(defalias 'git-call-process-display-error #[(&rest args) "\306\307!r\nq\210	\310\311 \210\312\313\n\314D\f#+\315=\211\204$\316\n!\210
+\207" [default-directory dir buffer buffer-read-only args ok get-buffer-create "*Git Command Output*" nil erase-buffer apply git-call-process t 0 display-message-or-buffer] 5 (#$ . 5039)])
#@105 Wrapper for call-process that returns the process output as a string,
or nil if the git command failed.
(defalias 'git-call-process-string #[(&rest args) "\302\303!rq\210\304\216\305\306\307	#\310=\205\311 +\207" [#1=#:temp-buffer args generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) apply git-call-process t 0 buffer-string] 4 (#$ . 5432)])
#@132 Wrapper for call-process that displays error message and returns
the process output as a string, or nil if the git command failed.
(defalias 'git-call-process-string-display-error #[(&rest args) "\302\303!rq\210\304\216\305\306\307\211D	#\310=\203\311 \202 \312p!\210\313+\207" [#1=#:temp-buffer args generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) apply git-call-process t 0 buffer-string display-message-or-buffer nil] 4 (#$ . 5847)])
#@50 Run a git process with a buffer region as input.
(defalias 'git-run-process-region #[(buffer start end program args) "prq\210\306	!\210\307\310\f
\311\n\312D\311\f&+\207" [default-directory dir output-buffer buffer start end cd apply call-process-region nil t program args] 9 (#$ . 6357)])
#@70 Run a git command, sending the output to a buffer named BUFFER-NAME.
(defalias 'git-run-command-buffer #[(buffer-name &rest args) "\306	!\307\310\f@\"\210r\nq\210\311\312 \210\313\314\n\f#\210+\307\315\f@\"\210\n*\207" [default-directory buffer-name buffer dir args buffer-read-only get-buffer-create message "Running git %s..." nil erase-buffer apply git-call-process "Running git %s...done"] 4 (#$ . 6661)])
#@58 Run a git command with specified buffer region as input.
(defalias 'git-run-command-region #[(buffer start end env &rest args) "\306\307!rq\210\310\216	\203\311\n\f\312\313\314	!\315C
#%\202&\311\n\f\315
%\316=\2030\317 \2025\320p!\210\321+\207" [#1=#:temp-buffer env buffer start end args generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) git-run-process-region "env" append git-get-env-strings "git" 0 buffer-string display-message-or-buffer nil] 9 (#$ . 7083)])
#@47 Run a git hook and display its output if any.
(defalias 'git-run-hook #[(hook env &rest args) "\306\307	P!\310\n!?\206R\311\312\313!r\fq\210\314 \210\315!\210\203<\316\317\320\311\f\321D\311\322\323!\nC#&\202H\316\317\n\311\f\321D\311&)\324\f!\210
*\325=*\207" [default-directory hook hook-name dir buffer status expand-file-name ".git/hooks/" file-executable-p nil get-buffer-create "*Git Hook Output*" erase-buffer cd apply call-process "env" t append git-get-env-strings display-message-or-buffer 0 env args] 10 (#$ . 7623)])
#@40 Read a SHA1 from the specified string.
(defalias 'git-get-string-sha1 #[(string) "\205\301\302\"\205\303\304\"\207" [string string-match "[0-9a-f]\\{40\\}" match-string 0] 3 (#$ . 8178)])
#@47 Return the name to use as GIT_COMMITTER_NAME.
(defalias 'git-get-committer-name #[nil "\206&\303\304!\206&\305\301!\203	\206&\306\302!\203\302 \206&\305\302!\205&\n\207" [git-committer-name add-log-full-name user-full-name git-config "user.name" boundp fboundp] 2 (#$ . 8379)])
#@57 Return the email address to use as GIT_COMMITTER_EMAIL.
(defalias 'git-get-committer-email #[nil "\206&\303\304!\206&\305\301!\203	\206&\306\302!\203\302 \206&\305\302!\205&\n\207" [git-committer-email add-log-mailing-address user-mail-address git-config "user.email" boundp fboundp] 2 (#$ . 8673)])
#@46 Return the coding system to use for commits.
(defalias 'git-get-commits-coding-system #[nil "\302\303!	\206\203\304\305!\203\305!\206\306)\207" [repo-config git-commits-coding-system git-config "i18n.commitencoding" fboundp locale-charset-to-coding-system utf-8] 2 (#$ . 8989)])
#@51 Return the coding system used for git-log output.
(defalias 'git-get-logoutput-coding-system #[nil "\302\303!\206	\302\304!	\206\203\305\306!\203\306!\206\307)\207" [repo-config git-commits-coding-system git-config "i18n.logoutputencoding" "i18n.commitencoding" fboundp locale-charset-to-coding-system utf-8] 2 (#$ . 9285)])
#@34 Escape a file name if necessary.
(defalias 'git-escape-file-name #[(name) "\301\302\"\203\303\304\305\306#\303Q\207\207" [name string-match "[\n	\"\\]" "\"" mapconcat #[(c) "\301\302\"\203	\303\207\301\304\"\203\305\207\301\306\"\203\307\207\301\310\"\203$\311\207\312!\207" [c eql 10 "\\n" 9 "\\t" 92 "\\\\" 34 "\\\"" char-to-string] 3] ""] 5 (#$ . 9628)])
#@53 Print a success message after having handled FILES.
(defalias 'git-success-message #[(text files) "G\211\303\232\203\304\305\n@#\202\304\306\n	#)\207" [files n text 1 message "%s %s" "%s %d files"] 5 (#$ . 10008)])
#@49 Retrieve the top-level directory of a git tree.
(defalias 'git-get-top-dir #[(dir) "\303\304\305!!\306\216rq\210\307	!\210\310\311\312\313#\314=\204!\315\316	\"\210*rq\210\317 +\320\321	!\322\n\323\"@P!)\207" [standard-output dir cdup get-buffer-create generate-new-buffer-name " *string-output*" ((kill-buffer standard-output)) cd git-call-process t "rev-parse" "--show-cdup" 0 error "cannot find top-level git tree for %s." buffer-string expand-file-name file-name-as-directory split-string "\n"] 5 (#$ . 10236)])
#@54 Add a file name to the ignore file in its directory.
(defalias 'git-append-to-ignore #[(file) "\306!\307	!\310	!\306\f\n\"\311
!?\312 \313\216\314
!q\210db\210\315i!\204.\316c\210\317\316\261\210\320\321ed#\210\322 \210*\203M\323\321\324\325\326\327
!%\210\330\327
!C!-\207" [file fullname dir name git-per-dir-ignore-file ignore-name expand-file-name file-name-directory file-name-nondirectory file-exists-p current-window-configuration ((set-window-configuration #1=#:wconfig)) find-file-noselect zerop "\n" "/" sort-lines nil save-buffer git-call-process "update-index" "--add" "--" file-relative-name git-update-status-files created #1#] 7 (#$ . 10765)])
#@44 Parse a revision name and return its SHA1.
(defalias 'git-rev-parse #[(rev) "\301\302\303\"!\207" [rev git-get-string-sha1 git-call-process-string "rev-parse"] 4 (#$ . 11445)])
#@73 Retrieve the value associated to KEY in the git repository config file.
(defalias 'git-config #[(key) "\302\303\"\211\205\304	\305\"@)\207" [key str git-call-process-string "config" split-string "\n"] 4 (#$ . 11629)])
#@43 Wrapper for the git-symbolic-ref command.
(defalias 'git-symbolic-ref #[(ref) "\302\303\"\211\205\304	\305\"@)\207" [ref str git-call-process-string "symbolic-ref" split-string "\n"] 4 (#$ . 11857)])
#@47 Update a reference by calling git-update-ref.
(defalias 'git-update-ref #[(ref newval &optional oldval reason) "\205C\n\203\n	B	B\f\203\f	B\305	B\n\204'\306	B\307\310\311	#)\207" [oldval args newval ref reason "-m" "-d" apply git-call-process-display-error "update-ref"] 4 (#$ . 12067)])
#@97 Return a list of refs using git-for-each-ref.
Each entry is a cons of (SHORT-NAME . FULL-NAME).
(defalias 'git-for-each-ref #[(&rest specs) "\303\304\305!r	q\210\306\216\307\310\311\312\313\n%\210eb\210\314\315\303\311#\203,\316\317!\316\320!BB\202+\237)\207" [refs #1=#:temp-buffer specs nil generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) apply git-call-process t "for-each-ref" "--format=%(refname)" re-search-forward "^[^/\n]+/[^/\n]+/\\(.+\\)$" match-string 1 0] 6 (#$ . 12377)])
#@34 Read a tree into the index file.
(defalias 'git-read-tree #[(tree &optional index-file) "\303\205	\304PC	\"\305\306\307\n\205\nC#)\207" [index-file process-environment tree append "GIT_INDEX_FILE=" apply git-call-process-display-error "read-tree"] 4 (#$ . 12938)])
#@69 Call git-write-tree and return the resulting tree SHA1 as a string.
(defalias 'git-write-tree #[(&optional index-file) "\302\205	\303PC	\"\304\305\306!!)\207" [index-file process-environment append "GIT_INDEX_FILE=" git-get-string-sha1 git-call-process-string-display-error "write-tree"] 3 (#$ . 13215)])
#@241 Create a commit and possibly update HEAD.
Create a commit with the message in BUFFER using the tree with hash TREE.
Use PARENT as the parent of the new commit. If PARENT is the current "HEAD",
update the "HEAD" reference to the new commit.
(defalias 'git-commit-tree #[(buffer tree parent) "\306 \307 \310\311\211\211\211\211'()\203$\312\313	B)	Br*q\210eb\210\314\315\316+!\317Q\311\320#\211\203\236\214e}\210eb\210\314\321\311\320#\203V\322\323!(\322\324!'eb\210\314\325\311\320#\203e\322\323!eb\210\314\326\311\320#\203\232\327\330\322\323!\331\320#\311)\211,\203\231,@)\313	B)	B,A\211,\204\202*)\202\240edb\210\314\332\311\320#\203\263
\322\333!P-)\334\335(B\336'B\337\306 B\340\307 BF.\f\203\327\341\fB.B.\342\343*\n.\344/	\237&)!\2110\203\367\345\3460)
$\2100.	\207" [coding-system-for-write args log-end log-start author-date subject git-get-committer-name git-get-committer-email "commit (initial): " nil "commit: " "-p" re-search-forward "^" regexp-quote "\n" t "^Author: +\\(.*?\\) *<\\(.*\\)> *$" match-string 1 2 "^Date: +\\(.*\\)$" "^Merge: +\\(.*\\)" "commit (merge): " split-string " +" ".*$" 0 git-get-string-sha1 "GIT_AUTHOR_NAME" "GIT_AUTHOR_EMAIL" "GIT_COMMITTER_NAME" "GIT_COMMITTER_EMAIL" "GIT_AUTHOR_DATE" apply git-run-command-region "commit-tree" git-update-ref "HEAD" author-email author-name parent buffer git-log-msg-separator --dolist-tail-- buffer-file-coding-system env tree commit] 11 (#$ . 13531)])
#@52 Check if the git db is empty (no commit done yet).
(defalias 'git-empty-db-p #[nil "\300\301\302\303\304$\305=?\207" [git-call-process nil "rev-parse" "--verify" "HEAD" 0] 5 (#$ . 15028)])
#@63 Retrieve the merge heads from the MERGE_HEAD file if present.
(defalias 'git-get-merge-heads #[nil "\302\303\304!\203/\305\306!r	q\210\307\216\310\304\302\211\211\311%\210eb\210\312\313\302\311#\203.\314\315!B\202+\237)\207" [heads #1=#:temp-buffer nil file-readable-p ".git/MERGE_HEAD" generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) insert-file-contents t re-search-forward "[0-9a-f]\\{40\\}" match-string 0] 6 (#$ . 15223)])
#@39 Get a one-line description of COMMIT.
(defalias 'git-get-commit-description #[(commit) "\303 \304\305\306\307	$\211\203%\310\311\n\"\203%\312\313\n\"\314\315O\316\312\317\n\"Q\202&\n*\207" [coding-system-for-read commit descr git-get-logoutput-coding-system git-call-process-string "log" "--max-count=1" "--pretty=oneline" string-match "\\`\\([0-9a-f]\\{40\\}\\) *\\(.*\\)$" match-string 1 0 10 " - " 2] 6 (#$ . 15728)])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put git-fileinfo->marked compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block git-fileinfo->marked (or (and (memq (aref cl-x 0) cl-struct-git-fileinfo-tags)) (error "%s accessing a non-%s" 'git-fileinfo->marked 'git-fileinfo)) (aref cl-x 1)) nil] 7] "/builddir/build/BUILD/git-1.8.3.1/contrib/emacs/git.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'git-fileinfo->marked #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-git-fileinfo-tags 0 error "%s accessing a non-%s" git-fileinfo->marked git-fileinfo 1] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put git-fileinfo->state compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block git-fileinfo->state (or (and (memq (aref cl-x 0) cl-struct-git-fileinfo-tags)) (error "%s accessing a non-%s" 'git-fileinfo->state 'git-fileinfo)) (aref cl-x 2)) nil] 7] "/builddir/build/BUILD/git-1.8.3.1/contrib/emacs/git.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'git-fileinfo->state #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-git-fileinfo-tags 0 error "%s accessing a non-%s" git-fileinfo->state git-fileinfo 2] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put git-fileinfo->name compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block git-fileinfo->name (or (and (memq (aref cl-x 0) cl-struct-git-fileinfo-tags)) (error "%s accessing a non-%s" 'git-fileinfo->name 'git-fileinfo)) (aref cl-x 3)) nil] 7] "/builddir/build/BUILD/git-1.8.3.1/contrib/emacs/git.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'git-fileinfo->name #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-git-fileinfo-tags 0 error "%s accessing a non-%s" git-fileinfo->name git-fileinfo 3] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put git-fileinfo->old-perm compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block git-fileinfo->old-perm (or (and (memq (aref cl-x 0) cl-struct-git-fileinfo-tags)) (error "%s accessing a non-%s" 'git-fileinfo->old-perm 'git-fileinfo)) (aref cl-x 4)) nil] 7] "/builddir/build/BUILD/git-1.8.3.1/contrib/emacs/git.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'git-fileinfo->old-perm #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-git-fileinfo-tags 0 error "%s accessing a non-%s" git-fileinfo->old-perm git-fileinfo 4] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put git-fileinfo->new-perm compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block git-fileinfo->new-perm (or (and (memq (aref cl-x 0) cl-struct-git-fileinfo-tags)) (error "%s accessing a non-%s" 'git-fileinfo->new-perm 'git-fileinfo)) (aref cl-x 5)) nil] 7] "/builddir/build/BUILD/git-1.8.3.1/contrib/emacs/git.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'git-fileinfo->new-perm #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-git-fileinfo-tags 0 error "%s accessing a non-%s" git-fileinfo->new-perm git-fileinfo 5] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put git-fileinfo->rename-state compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block git-fileinfo->rename-state (or (and (memq (aref cl-x 0) cl-struct-git-fileinfo-tags)) (error "%s accessing a non-%s" 'git-fileinfo->rename-state 'git-fileinfo)) (aref cl-x 6)) nil] 7] "/builddir/build/BUILD/git-1.8.3.1/contrib/emacs/git.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'git-fileinfo->rename-state #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-git-fileinfo-tags 0 error "%s accessing a non-%s" git-fileinfo->rename-state git-fileinfo 6] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put git-fileinfo->orig-name compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block git-fileinfo->orig-name (or (and (memq (aref cl-x 0) cl-struct-git-fileinfo-tags)) (error "%s accessing a non-%s" 'git-fileinfo->orig-name 'git-fileinfo)) (aref cl-x 7)) nil] 7] "/builddir/build/BUILD/git-1.8.3.1/contrib/emacs/git.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'git-fileinfo->orig-name #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-git-fileinfo-tags 0 error "%s accessing a non-%s" git-fileinfo->orig-name git-fileinfo 7] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put git-fileinfo->needs-update compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block git-fileinfo->needs-update (or (and (memq (aref cl-x 0) cl-struct-git-fileinfo-tags)) (error "%s accessing a non-%s" 'git-fileinfo->needs-update 'git-fileinfo)) (aref cl-x 8)) nil] 7] "/builddir/build/BUILD/git-1.8.3.1/contrib/emacs/git.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'git-fileinfo->needs-update #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-git-fileinfo-tags 0 error "%s accessing a non-%s" git-fileinfo->needs-update git-fileinfo 8] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put git-fileinfo->needs-refresh compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block git-fileinfo->needs-refresh (or (and (memq (aref cl-x 0) cl-struct-git-fileinfo-tags)) (error "%s accessing a non-%s" 'git-fileinfo->needs-refresh 'git-fileinfo)) (aref cl-x 9)) nil] 7] "/builddir/build/BUILD/git-1.8.3.1/contrib/emacs/git.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'git-fileinfo->needs-refresh #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-git-fileinfo-tags 0 error "%s accessing a non-%s" git-fileinfo->needs-refresh git-fileinfo 9] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put git-fileinfo-p compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block git-fileinfo-p (and (vectorp cl-x) (>= (length cl-x) 10) (memq (aref cl-x 0) cl-struct-git-fileinfo-tags) t)) nil] 7] "/builddir/build/BUILD/git-1.8.3.1/contrib/emacs/git.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'git-fileinfo-p #[(cl-x) "\302!\205G\303Y\205\304H	>\205\305\207" [cl-x cl-struct-git-fileinfo-tags vectorp 10 0 t] 2])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put make-git-fileinfo compiler-macro #[(cl-whole &rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\311>A@\312>A@\313>A@\314>A@\315>A@\316>A@\203m@\317>\203TAA\211\202?\320>A@\203c\321\211\202?\322\323@\"\210\202=)\324\325\326\321\321	\n\f
&.	\207" [#1# marked state name old-perm new-perm :marked :state :name :old-perm :new-perm :rename-state :orig-name :needs-update :needs-refresh (:marked :state :name :old-perm :new-perm :rename-state :orig-name :needs-update :needs-refresh :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:marked :state :name :old-perm :new-perm :rename-state :orig-name :needs-update :needs-refresh)" cl--defsubst-expand (marked state name old-perm new-perm rename-state orig-name needs-update needs-refresh) (cl-block make-git-fileinfo (vector 'cl-struct-git-fileinfo marked state name old-perm new-perm rename-state orig-name needs-update needs-refresh)) rename-state orig-name needs-update needs-refresh #:--cl-keys-- cl-whole] 16 "\n\n(fn CL-WHOLE &cl-quote &key MARKED STATE NAME OLD-PERM NEW-PERM RENAME-STATE ORIG-NAME NEEDS-UPDATE NEEDS-REFRESH)"] "/builddir/build/BUILD/git-1.8.3.1/contrib/emacs/git.el" compiler-macro-file purecopy file-name-nondirectory] 6)
#@99 

(fn &key MARKED STATE NAME OLD-PERM NEW-PERM RENAME-STATE ORIG-NAME NEEDS-UPDATE NEEDS-REFRESH)
(defalias 'make-git-fileinfo #[(&rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\311>A@\312>A@\313>A@\314>A@\315>A@\316>A@\203m@\317>\203TAA\211\202?\320>A@\203c\321\211\202?\322\323@\"\210\202=)\324\325	\n\f
&\n.	\207" [#1# marked state name old-perm new-perm :marked :state :name :old-perm :new-perm :rename-state :orig-name :needs-update :needs-refresh (:marked :state :name :old-perm :new-perm :rename-state :orig-name :needs-update :needs-refresh :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:marked :state :name :old-perm :new-perm :rename-state :orig-name :needs-update :needs-refresh)" vector cl-struct-git-fileinfo rename-state orig-name needs-update needs-refresh #2=#:--cl-keys--] 12 (#$ . 24559)])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put git-create-fileinfo compiler-macro #[(_cl-whole-arg state name &rest #1=#:--cl-rest--) "\211A@\211A@\211A@\211A@\211A@\203,\306\307\310\311G\\D\"\210\312\313\314\310\211\211
	\n\f
&\f-\207" [#1# old-perm new-perm rename-state orig-name marked signal wrong-number-of-arguments nil 8 cl--defsubst-expand (state name old-perm new-perm rename-state orig-name marked) (cl-block git-create-fileinfo (vector 'cl-struct-git-fileinfo marked state name old-perm new-perm rename-state orig-name nil nil)) state name] 13 "\n\n(fn CL-WHOLE-ARG &cl-quote STATE NAME &optional OLD-PERM NEW-PERM RENAME-STATE ORIG-NAME MARKED)"] "/builddir/build/BUILD/git-1.8.3.1/contrib/emacs/git.el" compiler-macro-file purecopy file-name-nondirectory] 6)
#@77 

(fn STATE NAME &optional OLD-PERM NEW-PERM RENAME-STATE ORIG-NAME MARKED)
(defalias 'git-create-fileinfo #[(state name &rest #1=#:--cl-rest--) "\211A@\211A@\211A@\211A@\211A@\203,\306\307\310\311G\\D\"\210\312\313

	\n\f\314\211&\n-\207" [#1# old-perm new-perm rename-state orig-name marked signal wrong-number-of-arguments git-create-fileinfo 7 vector cl-struct-git-fileinfo nil state name] 11 (#$ . 26294)])
(byte-code "\301C\302\303\304\305#\210\302\303\306\307#\210\302\303\310\311#\210\302\303\312\313#\210\302\314\315\313#\210\302\316\315\313#\210\302\317\315\320#\210\302\321\315\313#\210\302\322\315\313#\210\302\323\315\313#\210\302\324\315\313#\210\302\325\315\313#\210\302\326\315\313#\210\302\327\315\313#\210\302\330\315\313#\210\302\331\315\313#\207" [cl-struct-git-fileinfo-tags cl-struct-git-fileinfo put git-fileinfo cl-struct-slots ((cl-tag-slot) (marked) (state) (name) (old-perm) (new-perm) (rename-state) (orig-name) (needs-update) (needs-refresh)) cl-struct-type (vector nil) cl-struct-include nil cl-struct-print t git-create-fileinfo side-effect-free make-git-fileinfo git-fileinfo-p error-free git-fileinfo->needs-refresh git-fileinfo->needs-update git-fileinfo->orig-name git-fileinfo->rename-state git-fileinfo->new-perm git-fileinfo->old-perm git-fileinfo->name git-fileinfo->state git-fileinfo->marked] 4)
(defvar git-status nil)
#@31 Set the state of a file info.
(defalias 'git-set-fileinfo-state #[(info state) "\306H	>\204\307\310\311\312#\210\313H\n=?\205\255\306H	>\204%\307\310\311\312#\210\211\313\nI\210)\306H	>\204;\307\310\314\312#\210\211\315\306H	>\204M\307\310\316\312#\210\317HI\210)\306H	>\204a\307\310\320\312#\210\211\321\322I\210)\306H	>\204w\307\310\323\312#\210\211\324\322I\210)\306H	>\204\216\307\310\325\312#\210\211\326\322I\210)\306H	>\204\245\307\310\327\312#\210\211\330\331I)\207" [info cl-struct-git-fileinfo-tags state #1=#:v #2=#:v #3=#:v 0 error "%s accessing a non-%s" git-fileinfo->state git-fileinfo 2 git-fileinfo->new-perm 5 git-fileinfo->old-perm 4 git-fileinfo->rename-state 6 nil git-fileinfo->orig-name 7 git-fileinfo->needs-update 8 git-fileinfo->needs-refresh 9 t #4=#:v #5=#:v #6=#:v] 7 (#$ . 27684)])
#@82 Apply FUNC to the status files names in the FILES list.
The list must be sorted.
(defalias 'git-status-filenames-map #[(status func files &rest args) "\205V\211A@\306	\307\"\205U\n\205U\n\310H\211\307H
>\204)\311\312\313\314#\210\f\315H\211\231\203<\316	\n\"\202Q\230\203K\317\f#\210\211A@*\202*\207" [files status node file info cl-struct-git-fileinfo-tags ewoc-nth 0 2 error "%s accessing a non-%s" git-fileinfo->name git-fileinfo 3 ewoc-next apply name func args] 5 (#$ . 28537)])
#@65 Set the state of a list of named files. The list must be sorted
(defalias 'git-set-filenames-state #[(status files state) "\205\303	\304\n$\210\n?\205\305	\306\"\207" [files status state git-status-filenames-map git-set-fileinfo-state ewoc-filter #[(info) "\302H	>\204\303\304\305\306#\210\307H\207" [info cl-struct-git-fileinfo-tags 0 error "%s accessing a non-%s" git-fileinfo->state git-fileinfo 2] 4]] 5 (#$ . 29057)])
#@58 Convert from a string to a added/deleted/modified state.
(defalias 'git-state-code #[(code) "\301\302!\303\"\203\304\207\301\302!\305\"\203\306\207\301\302!\307\"\203!\310\207\301\302!\311\"\203,\312\207\301\302!\313\"\2037\314\207\301\302!\315\"\203B\304\207\316\207" [code eql string-to-char 77 modified 63 unknown 65 added 68 deleted 85 unmerged 84 nil] 3 (#$ . 29496)])
#@37 Format a git status code as string.
(defalias 'git-status-code-as-string #[(code) "\301\302\"\203
\303\304\305\306#\207\301\307\"\203\303\310\305\311#\207\301\312\"\203'\303\313\305\306#\207\301\314\"\2034\303\315\305\306#\207\301\316\"\203A\303\317\305\320#\207\301\321\"\203N\303\322\305\323#\207\301\324\"\203[\303\325\305\326#\207\327\207" [code memql 'modified propertize "Modified" face git-status-face 'unknown "Unknown " git-unknown-face 'added "Added   " 'deleted "Deleted " 'unmerged "Unmerged" git-unmerged-face 'uptodate "Uptodate" git-uptodate-face 'ignored "Ignored " git-ignored-face "?       "] 4 (#$ . 29890)])
#@68 Return a string describing the file type based on its permissions.
(defalias 'git-file-type-as-string #[(old-perm new-perm) "\305\206\306\307\"\305\n\206\306\307\"\310\311\"\203:\310	\311\"\203$\312\202\250\310	\313\"\203/\314\202\250\310	\315\"\205\250\316\202\250\310\313\"\203[\310	\311\"\203L\317\202\250\310	\315\"\203W\320\202\250\321\202\250\310\315\"\203|\310	\311\"\203m\322\202\250\310	\313\"\203x\323\202\250\324\202\250\310\325\"\203\207\312\202\250\310\306\"\203\244\310	\313\"\203\231\321\202\250\310	\315\"\205\250\324\202\250\326\327\"\211\203\265\330\f\331\332#\202\300\325=\203\277\333\202\300\334+\207" [old-perm old-type new-perm new-type str lsh 0 -9 eql 64 nil 80 "   (type change symlink -> file)" 112 "   (type change subproject -> file)" "   (type change file -> symlink)" "   (type change subproject -> symlink)" "   (symlink)" "   (type change file -> subproject)" "   (type change symlink -> subproject)" "   (subproject)" 72 format "   (unknown type %o)" propertize face git-status-face "/" ""] 5 (#$ . 30539)])
#@97 Return a string describing the copy or rename associated with INFO, or an empty string if none.
(defalias 'git-rename-as-string #[(info) "\303H	>\204\304\305\306\307#\210\310H\211\203X\311\312\n\313=\203\"\314\202=\303H	>\2040\304\305\315\307#\210\316H\317=\203<\320\202=\321\322\303H	>\204L\304\305\323\307#\210\324H!\325R\326\327#\202Y\330)\207" [info cl-struct-git-fileinfo-tags state 0 error "%s accessing a non-%s" git-fileinfo->rename-state git-fileinfo 6 propertize "   (" copy "copied from " git-fileinfo->state 2 added "renamed from " "renamed to " git-escape-file-name git-fileinfo->orig-name 7 ")" face git-status-face ""] 9 (#$ . 31631)])
#@39 Format a permission change as string.
(defalias 'git-permissions-as-string #[(old-perm new-perm) "\302\203	\203\303\304	\"\305\"\306=\203\307\202'\303\305\"\306=\203&\310\202'\311\312\313#\207" [old-perm new-perm propertize logand logxor 73 0 "  " "+x" "-x" face git-permission-face] 5 (#$ . 32305)])
#@48 Pretty-printer for the git-fileinfo structure.
(defalias 'git-fileinfo-prettyprint #[(info) "\304H	>\204\305\306\307\310#\210\311H\304H	>\204\305\306\312\310#\210\313H\314\304H	>\2043\305\306\315\310#\210\316H\203A\317\320\321\322#\202B\323\323\324\304H	>\204R\305\306\325\310#\210\326H!\323\327\n\"\330\331\304H	>\204k\305\306\332\310#\210\333H!\334\n\"\335!\260\nc*\207" [info cl-struct-git-fileinfo-tags new-perm old-perm 0 error "%s accessing a non-%s" git-fileinfo->old-perm git-fileinfo 4 git-fileinfo->new-perm 5 "   " git-fileinfo->marked 1 propertize "*" face git-mark-face " " git-status-code-as-string git-fileinfo->state 2 git-permissions-as-string "  " git-escape-file-name git-fileinfo->name 3 git-file-type-as-string git-rename-as-string] 12 (#$ . 32624)])
#@84 Update the fileinfo of the specified node. The names are assumed to match already.
(defalias 'git-update-node-fileinfo #[(node info) "\306H\n\307H>\204\310\311\312\313#\210\n\211\314	\307H>\204$\310\311\312\313#\210	\314HI\210)	\307H>\2048\310\311\315\313#\210	\211\316\317I\210)\n	\232?\205f\n\307H>\204U\310\311\320\313#\210\n\211\321\322I\210)\211\306\nI))\207" [node data info cl-struct-git-fileinfo-tags #1=#:v #2=#:v 2 0 error "%s accessing a non-%s" git-fileinfo->marked git-fileinfo 1 git-fileinfo->needs-update 8 nil git-fileinfo->needs-refresh 9 t #3=#:v #4=#:v] 7 (#$ . 33426)])
#@90 Insert a sorted list of file infos in the status buffer, replacing existing ones if any.
(defalias 'git-insert-info-list #[(status infolist files) "\211A@\306\n\307\"	\205 	\307H\f>\204\310\311\312\313#\210	\314H\315	\203\375\205D\316H\211\307H\f>\204?\310\311\312\313#\210\314H)\203b@
\231\203b\211A@B\202F\203t@
\230\203tA\204\235\317\n	\"\211A@\211\205\231	\307H\f>\204\226\310\311\312\313#\210	\314H\202\371
\231\203\254\320\n\"\202\371
\230\203\327\321	\"\210\211A@\211\205\323	\307H\f>\204\320\310\311\312\313#\210	\314H\202\371\322\n	#\211A@\211\205\370	\307H\f>\204\365\310\311\312\313#\210	\314H)\202$\237\244,\207" [infolist info status node cl-struct-git-fileinfo-tags name ewoc-nth 0 error "%s accessing a non-%s" git-fileinfo->name git-fileinfo 3 nil 2 ewoc-enter-last ewoc-next git-update-node-fileinfo ewoc-enter-before remaining cl-x nodename files] 5 (#$ . 34041)])
#@116 Run git-diff-index on FILES and parse the results into STATUS.
Return the list of files that haven't been handled.
(defalias 'git-run-diff-index #[(status files) "\306\307\310!r	q\210\311\216\312\313\314\315\316\317\320\321\n&\210eb\210\322\323\306\314\324$\203\267\325\326\324!\327\"\325\326\330!\327\"\326\331!\2069\326\332!\326\333!\206B\326\334!\326\327!*+\203\222\335
!\336=\203m\337\340\306\341+*\342\f\306\211&\nB\202\263\337\340\306\343\f\344\211\345\306\211&\nB\337\340\306\341+*\345\f\306\211&\nB\202\263\346
!\f+**+\337\340\306
\f+*\306\211\211\211&\n,B-\202+\347\237\350\"\351,\n#)\207" [infolist #1=#:temp-buffer files new-name name state nil generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) apply git-call-process t "diff-index" "-z" "-M" "HEAD" "--" re-search-forward ":\\([0-7]\\{6\\}\\) \\([0-7]\\{6\\}\\) [0-9a-f]\\{40\\} [0-9a-f]\\{40\\} \\(\\([ADMUT]\\)\\([^]+\\)\\|\\([CR]\\)[0-9]*\\([^]+\\)\\([^]+\\)\\)" 1 string-to-number match-string 8 2 4 6 5 7 string-to-char 67 vector cl-struct-git-fileinfo added copy deleted 0 rename git-state-code sort #[(info1 info2) "\303H	>\204\304\305\306\307#\210\310H\n\303H	>\204\304\305\306\307#\210\n\310H\231\207" [info1 cl-struct-git-fileinfo-tags info2 0 error "%s accessing a non-%s" git-fileinfo->name git-fileinfo 3] 5] git-insert-info-list new-perm old-perm status] 11 (#$ . 35018)])
#@59 Find a given file in the status ewoc and return its node.
(defalias 'git-find-status-file #[(status file) "\305\306\"\211\203-\n	\307H\211\306H\f>\204\310\311\312\313#\210\314H)\230\204-\315	\"\211\204		)\207" [status node file cl-x cl-struct-git-fileinfo-tags ewoc-nth 0 2 error "%s accessing a non-%s" git-fileinfo->name git-fileinfo 3 ewoc-next] 6 (#$ . 36491)])
#@114 Run git-ls-files on FILES and parse the results into STATUS.
Return the list of files that haven't been handled.
(defalias 'git-run-ls-files #[(status files default-state &rest options) "\306\307\310!r	q\210\311\216\312\313\314\315\316\317\n\320C#%\210eb\210\321\322\306\314\323$\203W\324\323!
\f\324\325!\326\230\203:\327\330\331\"\202;\332\333\334\306\f\332\306\211\211\211&\n+B)\202+\237\335 #)\207" [infolist #1=#:temp-buffer options files name default-state nil generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) apply git-call-process t "ls-files" "-z" append "--" re-search-forward "\\([^]*?\\)\\(/?\\)" 1 match-string 2 "/" lsh 72 9 0 vector cl-struct-git-fileinfo git-insert-info-list new-perm state status] 11 (#$ . 36875)])
#@117 Run git-ls-files -c on FILES and parse the results into STATUS.
Return the list of files that haven't been handled.
(defalias 'git-run-ls-files-cached #[(status files default-state) "\306\307\310!r	q\210\311\216\312\313\314\315\316\317\320\321\n&\210eb\210\322\323\306\314#\203P\324\325\326!\327\"\f\330=\2034\331\2025\325\332!\333\334\306\f
\306\211\211\211&\nB+\202+\237\335\n#)\207" [infolist #1=#:temp-buffer files new-perm default-state old-perm nil generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) apply git-call-process t "ls-files" "-z" "-s" "-c" "--" re-search-forward "\\([0-7]\\{6\\}\\) [0-9a-f]\\{40\\} 0	\\([^]+\\)" string-to-number match-string 1 8 added 0 2 vector cl-struct-git-fileinfo git-insert-info-list name status] 11 (#$ . 37703)])
#@65 Run git-ls-files -u on FILES and parse the results into STATUS.
(defalias 'git-run-ls-unmerged #[(status files) "\304\305!rq\210\306\216\307\310\311\312\313\314\315	&\210eb\210\316\317\320\316\311#\203+\321\322!\nB\202\n\237\323\n\324#,\207" [#1=#:temp-buffer files unmerged-files status generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) apply git-call-process t "ls-files" "-z" "-u" "--" nil re-search-forward "[0-7]\\{6\\} [0-9a-f]\\{40\\} [123]	\\([^]+\\)" match-string 1 git-set-filenames-state unmerged] 8 (#$ . 38550)])
#@56 Get the list of exclude files to pass to git-ls-files.
(defalias 'git-get-exclude-files #[nil "\302\303\304!\305\306!\203\306	B\203\305!\203	B	*\207" [config files nil git-config "core.excludesfile" file-readable-p ".git/info/exclude"] 3 (#$ . 39154)])
#@68 Run git-ls-files on FILES with appropriate --exclude-from options.
(defalias 'git-run-ls-files-with-excludes #[(status files default-state &rest options) "\306 \307\310	\n\311\312\313\fP\314
\315\316\"\"&)\207" [exclude-files status files default-state git-per-dir-ignore-file options git-get-exclude-files apply git-run-ls-files "--directory" "--no-empty-directory" "--exclude-per-directory=" append mapcar #[(f) "\301P\207" [f "--exclude-from="] 2]] 13 (#$ . 39426)])
#@75 Update the status of FILES from the index.
The FILES list must be sorted.
(defalias 'git-update-status-files #[(&optional files mark-files) "\204\306\307!\210	\203\310\311	#\210\202*\312\313\"\210\314\315\316\317#\210\n\203*\320\315\321#\210\322 \2037\320	\323#\202;\324	\"\325	\"\210\204M\f\203T	\204T\326\327\330$\204`
\203h	\204h\326\331\330\332%	\204s\333\334\335\"!\203}\320\321#\336\315#\210\"\203\215\337	\"\210\340 \210\341!)\207" [git-status files git-show-uptodate remaining-files git-show-unknown git-show-ignored error "Not in git-status buffer." git-status-filenames-map #[(info) "\303H	>\204\304\305\306\307#\210\211\310\311I)\207" [info cl-struct-git-fileinfo-tags #1=#:v 0 error #3="%s accessing a non-%s" git-fileinfo->needs-update git-fileinfo 8 t] 5] ewoc-map #[(info) "\303H	>\204\304\305\306\307#\210\211\310\311I\210)\312\207" [info cl-struct-git-fileinfo-tags #2=#:v 0 error #3# git-fileinfo->needs-update git-fileinfo 8 t nil] 5] git-call-process nil "update-index" "--refresh" git-run-ls-files-cached uptodate git-empty-db-p added git-run-diff-index git-run-ls-unmerged git-run-ls-files-with-excludes unknown "-o" ignored "-i" git-get-filenames ewoc-collect git-fileinfo->needs-update git-set-filenames-state git-mark-files git-refresh-files git-refresh-ewoc-hf mark-files] 6 (#$ . 39907)])
#@54 Mark all the specified FILES, and unmark the others.
(defalias 'git-mark-files #[(status files) "\205	\211A@\306	\307\"\n\205\357\n\310H\203\201\f\307H
>\204)\311\312\313\314#\210\f\315H\230\203\201\f\307H
>\204?\311\312\316\314#\210\f\317H\204s\f\307H
>\204S\311\312\316\314#\210\f\211\317\320I\210)\f\307H
>\204j\311\312\321\314#\210\f\211\322\320I\210)\211A@\323	\n\"\202\353\f\307H
>\204\217\311\312\316\314#\210\f\317H\203\303\f\307H
>\204\243\311\312\316\314#\210\f\211\317\324I\210)\f\307H
>\204\272\311\312\321\314#\210\f\211\322\320I\210)\203\346\f\307H
>\204\326\311\312\313\314#\210\f\315H\231\203\346\211A@\202\353\323	\n\")\202*\207" [files status node file info cl-struct-git-fileinfo-tags ewoc-nth 0 2 error "%s accessing a non-%s" git-fileinfo->name git-fileinfo 3 git-fileinfo->marked 1 t git-fileinfo->needs-refresh 9 ewoc-next nil #1=#:v #2=#:v #3=#:v #4=#:v] 6 (#$ . 41283)])
#@99 Return a list of all marked files, or if none a list containing just the file at cursor position.
(defalias 'git-marked-files #[nil "\204\302\303!\210\304\305\"\206\306!\211\307H)C\207" [git-status cl-x error "Not in git-status buffer." ewoc-collect #[(info) "\302H	>\204\303\304\305\306#\210\307H\207" [info cl-struct-git-fileinfo-tags 0 error "%s accessing a non-%s" git-fileinfo->marked git-fileinfo 1] 4] ewoc-locate 2] 4 (#$ . 42231)])
#@72 Return a sorted list of marked files that are in the specified states.
(defalias 'git-marked-files-state #[(&rest states) "\306 \307\211\307\211\2031@\211\310H\f>\204\311\312\313\314#\210\n\315H
>\203*\nBA\211\204
*\237*\207" [result files info --dolist-tail-- cl-struct-git-fileinfo-tags states git-marked-files nil 0 error "%s accessing a non-%s" git-fileinfo->state git-fileinfo 2] 5 (#$ . 42690)])
#@66 Refresh all files that need it and clear the needs-refresh flag.
(defalias 'git-refresh-files #[nil "\204\302\303!\210\304\305\"\210	\205\306	!\207" [git-status goal-column error "Not in git-status buffer." ewoc-map #[(info) "\304H	>\204\305\306\307\310#\210\311H\304H	>\204 \305\306\307\310#\210\211\311\312I\210)\n)\207" [info cl-struct-git-fileinfo-tags refresh #1=#:v 0 error "%s accessing a non-%s" git-fileinfo->needs-refresh git-fileinfo 9 nil] 5] move-to-column] 3 (#$ . 43114)])
#@37 Refresh the ewoc header and footer.
(defalias 'git-refresh-ewoc-hf #[(status) "\305\306!\307 \203\f\310\202\311\306!\312 \313\314\315\f\n\2030\316\317\n\"\203,\n\320\225\321O\2021\n\2021\322	\203@\323\324\325\326#P\202A\327%\330\320\"\203M\327\202N\331#+\207" [merge-heads head branch status default-directory git-symbolic-ref "HEAD" git-empty-db-p "Nothing committed yet" git-get-commit-description git-get-merge-heads ewoc-set-hf format "Directory:  %s\nBranch:     %s\nHead:       %s%s\n" string-match "^refs/heads/" 0 nil "none (detached HEAD)" "\nMerging:    " mapconcat #[(str) "\301!\207" [str git-get-commit-description] 2] "\n            " "" ewoc-nth "    No changes."] 12 (#$ . 43623)])
(defalias 'git-get-filenames #[(files) "\301\302\"\207" [files mapcar #[(info) "\302H	>\204\303\304\305\306#\210\307H\207" [info cl-struct-git-fileinfo-tags 0 error "%s accessing a non-%s" git-fileinfo->name git-fileinfo 3] 4]] 3])
#@42 Run git-update-index on a list of files.
(defalias 'git-update-index #[(index-file files) "\306\205	\307PC	\"\310\211\211
\310\211\203\215@\311\312H>\2042\313\314\315\316#\210\317H\320\"\203C\fB\202\204\311\312H>\204T\313\314\315\316#\210\317H\321\"\203eB\202\204\311\312H>\204v\313\314\315\316#\210\317H\322\"\203\204\nBA\211\204*\f\203\236\323\324\325\326\327\330\f!%\205\273\203\256\323\324\325\331\327\330!%\205\273\n?\206\273\323\324\325\327\330\n!$,\207" [index-file process-environment modified deleted added files append "GIT_INDEX_FILE=" nil memql 0 error "%s accessing a non-%s" git-fileinfo->state git-fileinfo 2 'added 'deleted 'modified apply git-call-process-display-error "update-index" "--add" "--" git-get-filenames "--remove" info --dolist-tail-- cl-struct-git-fileinfo-tags] 8 (#$ . 44583)])
#@33 Run the pre-commit hook if any.
(defalias 'git-run-pre-commit-hook #[nil "\204\304\305!\210\306\307\310\311#\211?\206<\312\313!?\206<\314\315!\316\216\317 ?\205)\320\321!\322\n\"\210\323\n	\"\210\324\325\326\nBC\"+)\207" [git-status files index-file head-tree error "Not in git-status buffer." git-marked-files-state added deleted modified file-executable-p ".git/hooks/pre-commit" make-temp-file "gitidx" ((delete-file index-file)) git-empty-db-p git-rev-parse "HEAD^{tree}" git-read-tree git-update-index git-run-hook "pre-commit" "GIT_INDEX_FILE"] 5 (#$ . 45465)])
#@68 Perform the actual commit using the current buffer as log message.
(defalias 'git-do-commit #[nil "p\306\307!r\nq\210\310\311!\203\312\313!\202\242\314\216\310\315\316\317#\320\211\211+\321 \2042\322\323!\322\324!\312\325!\210\326\"\205\241\327\320+\"\205\241\327+\"\205\241\330!\211\205\241\f\230\203a\331\332!\203\236\333	\f
#\211,\205\232\320\334\335\217\210\320\336\337\217\210r	q\210\340 \210)\341\342+!!\210\343\320\344\"\210\343\320\345\346#\210\312\347,\"\210\350\351\320\")\202\241\312\352!-+\207" [index-file buffer log-edit-parent-buffer head-tree tree head make-temp-file "gitidx" git-marked-files-state unmerged message "You cannot commit unmerged files, resolve them first." ((delete-file index-file)) added deleted modified nil git-empty-db-p git-rev-parse "HEAD" "HEAD^{tree}" "Running git commit..." git-read-tree git-update-index git-write-tree yes-or-no-p "The tree was not modified, do you really want to perform an empty commit? " git-commit-tree (delete-file ".git/MERGE_HEAD") ((error)) (delete-file ".git/MERGE_MSG") ((error)) erase-buffer git-update-status-files git-get-filenames git-call-process "rerere" "gc" "--auto" "Committed %s." git-run-hook "post-commit" "Commit aborted." files commit] 5 (#$ . 46049) nil])
#@63 Mark the file that the cursor is on and move to the next one.
(defalias 'git-mark-file #[nil "\204\305\306!\210\307!\211\310H\211\311H>\204\305\312\313\314#\210\n\211\315\316I\210)\317	\"\210\320\315\"*\207" [git-status pos info cl-struct-git-fileinfo-tags #1=#:v error "Not in git-status buffer." ewoc-locate 2 0 "%s accessing a non-%s" git-fileinfo->marked git-fileinfo 1 t ewoc-invalidate ewoc-goto-next] 5 (#$ . 47328) nil])
#@65 Unmark the file that the cursor is on and move to the next one.
(defalias 'git-unmark-file #[nil "\204\305\306!\210\307!\211\310H\211\311H>\204\305\312\313\314#\210\n\211\315\316I\210)\317	\"\210\320\315\"*\207" [git-status pos info cl-struct-git-fileinfo-tags #1=#:v error "Not in git-status buffer." ewoc-locate 2 0 "%s accessing a non-%s" git-fileinfo->marked git-fileinfo 1 nil ewoc-invalidate ewoc-goto-next] 5 (#$ . 47775) nil])
#@69 Unmark the file that the cursor is on and move to the previous one.
(defalias 'git-unmark-file-up #[nil "\204\305\306!\210\307!\211\310H\211\311H>\204\305\312\313\314#\210\n\211\315\316I\210)\317	\"\210\320\315\"*\207" [git-status pos info cl-struct-git-fileinfo-tags #1=#:v error "Not in git-status buffer." ewoc-locate 2 0 "%s accessing a non-%s" git-fileinfo->marked git-fileinfo 1 nil ewoc-invalidate ewoc-goto-prev] 5 (#$ . 48228) nil])
#@17 Mark all files.
(defalias 'git-mark-all #[nil "\204\302\303!\210\304\305\"\210	\205\306	!\207" [git-status goal-column error "Not in git-status buffer." ewoc-map #[(info) "\303H	>\204\304\305\306\307#\210\310H?\205*\303H	>\204#\304\305\306\307#\210\211\310\311I)\207" [info cl-struct-git-fileinfo-tags #1=#:v 0 error "%s accessing a non-%s" git-fileinfo->marked git-fileinfo 1 t] 5] move-to-column] 3 (#$ . 48688) nil])
#@19 Unmark all files.
(defalias 'git-unmark-all #[nil "\204\302\303!\210\304\305\"\210	\205\306	!\207" [git-status goal-column error "Not in git-status buffer." ewoc-map #[(info) "\303H	>\204\304\305\306\307#\210\310H\205+\303H	>\204\"\304\305\306\307#\210\211\310\311I\210)\312\207" [info cl-struct-git-fileinfo-tags #1=#:v 0 error "%s accessing a non-%s" git-fileinfo->marked git-fileinfo 1 nil t] 5] move-to-column] 3 (#$ . 49129) nil])
#@24 Toggle all file marks.
(defalias 'git-toggle-all-marks #[nil "\204\302\303!\210\304\305\"\210	\205\306	!\207" [git-status goal-column error "Not in git-status buffer." ewoc-map #[(info) "\303H	>\204\304\305\306\307#\210\211\310\303H	>\204 \304\305\306\307#\210\310H?I\210)\311\207" [info cl-struct-git-fileinfo-tags #1=#:v 0 error "%s accessing a non-%s" git-fileinfo->marked git-fileinfo 1 t] 7] move-to-column] 3 (#$ . 49586) nil])
#@34 Move the selection down N files.
(defalias 'git-next-file #[(&optional n) "\204\302\303!\210\304	\"\207" [git-status n error "Not in git-status buffer." ewoc-goto-next] 3 (#$ . 50040) "p"])
#@32 Move the selection up N files.
(defalias 'git-prev-file #[(&optional n) "\204\302\303!\210\304	\"\207" [git-status n error "Not in git-status buffer." ewoc-goto-prev] 3 (#$ . 50240) "p"])
#@43 Move the selection down N unmerged files.
(defalias 'git-next-unmerged-file #[(&optional n) "\204\306\307!\210\310!\311	\"\211\203D\312V\203D\n\313H\211\312H
>\204-\306\314\315\316#\210\f\313H)\317=\203;S\n\311\n\"\211\204\320	\"*\207" [git-status last node n cl-x cl-struct-git-fileinfo-tags error "Not in git-status buffer." ewoc-locate ewoc-next 0 2 "%s accessing a non-%s" git-fileinfo->state git-fileinfo unmerged ewoc-goto-node] 5 (#$ . 50438) "p"])
#@41 Move the selection up N unmerged files.
(defalias 'git-prev-unmerged-file #[(&optional n) "\204\306\307!\210\310!\311	\"\211\203D\312V\203D\n\313H\211\312H
>\204-\306\314\315\316#\210\f\313H)\317=\203;S\n\311\n\"\211\204\320	\"*\207" [git-status last node n cl-x cl-struct-git-fileinfo-tags error "Not in git-status buffer." ewoc-locate ewoc-prev 0 2 "%s accessing a non-%s" git-fileinfo->state git-fileinfo unmerged ewoc-goto-node] 5 (#$ . 50921) "p"])
#@44 Insert file(s) into the git-status buffer.
(defalias 'git-insert-file #[(file) "\301\302!C!\207" [file git-update-status-files file-relative-name] 3 (#$ . 51402) "fInsert file: "])
#@40 Add marked file(s) to the index cache.
(defalias 'git-add-file #[nil "\301\302\303\304\305#!\211\204\306\307\310\311\211\312$!B\313\314\315\316\317%\205)\320!\210\321\322\")\207" [files git-get-filenames git-marked-files-state unknown ignored unmerged file-relative-name read-file-name "File to add: " nil t apply git-call-process-display-error "update-index" "--add" "--" git-update-status-files git-success-message "Added"] 7 (#$ . 51590) nil])
#@40 Add marked file(s) to the ignore list.
(defalias 'git-ignore-file #[nil "\303\304\305!!\211\204\306\307\310\311\211\312$!B\311\211\203+\n@\313	!\210\nA\211\204*\314!\210\315\316\")\207" [files f --dolist-tail-- git-get-filenames git-marked-files-state unknown file-relative-name read-file-name "File to ignore: " nil t git-append-to-ignore git-update-status-files git-success-message "Ignored"] 7 (#$ . 52052) nil])
#@28 Remove the marked file(s).
(defalias 'git-remove-file #[nil "\303\304\305\306\307\310\311%!\211\204\312\313\314\315\211\316$!B\317A\203'\320\321G\"\202,\320\322@\"!\203]\315\211\203G\n@\315\323\324\217\210\nA\211\2048*\325\326\327\330\331%\205`\332!\210\333\334\"\202`\335\336!)\207" [files name --dolist-tail-- git-get-filenames git-marked-files-state added modified unknown uptodate ignored file-relative-name read-file-name "File to remove: " nil t yes-or-no-p format "Remove %d files? " "Remove %s? " (byte-code "\301!\203
\302!\210\202\303!\210\301\207" [name file-directory-p delete-directory delete-file] 2) ((error)) apply git-call-process-display-error "update-index" "--remove" "--" git-update-status-files git-success-message "Removed" message "Aborting"] 8 (#$ . 52489) nil])
#@39 Revert changes to the marked file(s).
(defalias 'git-revert-file #[nil "\306\301\307\300\310$\311\211\211\205\212\312\nA\203\313\314\nG\"\2023\313\315\n@\316H>\204.\317\320\321\322#\210\n@\323H\"!\205\212\n\311\211\203\376
@\324\f\316H>\204Q\317\320\325\322#\210\f\326H\327\"\203p\f\316H>\204g\317\320\321\322#\210\f\323H	B\202\367\324\f\316H>\204\317\320\325\322#\210\f\326H\330\"\203\236\f\316H>\204\225\317\320\321\322#\210\f\323HB\202\367\324\f\316H>\204\255\317\320\325\322#\210\f\326H\331\"\203\314\f\316H>\204\303\317\320\321\322#\210\f\323HB\202\367\324\f\316H>\204\333\317\320\325\322#\210\f\326H\332\"\203\367\f\316H>\204\361\317\320\321\322#\210\f\323HB
A\211\204?*\311,\211\203-
@,\333,!\211-\203%\334-!\203%\317\335\336-!\"\210)
A\211\204*	\203<\337\340\341\342\343	%\205G?\206G\337\340\344\345$\346\n!./\347.!\210/\205\211\311,\211\203\203
@,\333,!\211-\203{r-q\210\350\351\211\211#\210))
A\211\204a*\352\353.\"*+\207" [modified added files cl-struct-git-fileinfo-tags info --dolist-tail-- git-marked-files-state deleted unmerged nil yes-or-no-p format "Revert %d files? " "Revert %s? " 0 error "%s accessing a non-%s" git-fileinfo->name git-fileinfo 3 memql git-fileinfo->state 2 'added 'deleted 'unmerged 'modified get-file-buffer buffer-modified-p "Buffer %s is modified. Please kill or save modified buffers before reverting." buffer-name apply git-call-process-display-error "update-index" "--force-remove" "--" "checkout" "HEAD" git-get-filenames git-update-status-files revert-buffer t git-success-message "Reverted" file buffer names ok] 8 (#$ . 53312) nil])
#@44 Remove handled files from the status list.
(defalias 'git-remove-handled #[nil "\301\302\"\210\303\304\"?\205\305!\207" [git-status ewoc-filter #[(info) "\305\306H	>\204\307\310\311\312#\210\313H\314\"\203\n\207\305\306H	>\204(\307\310\311\312#\210\313H\315\"\2032\207\305\306H	>\204A\307\310\311\312#\210\313H\316\"\203K\f\207\317\207" [info cl-struct-git-fileinfo-tags git-show-ignored git-show-uptodate git-show-unknown memql 0 error "%s accessing a non-%s" git-fileinfo->state git-fileinfo 2 'ignored 'uptodate 'unknown t] 5] ewoc-nth 0 git-refresh-ewoc-hf] 3 (#$ . 54982) nil])
#@49 Toogle the option for showing up-to-date files.
(defalias 'git-toggle-show-uptodate #[nil "?\211\203\n\301 \207\302 \207" [git-show-uptodate git-refresh-status git-remove-handled] 2 (#$ . 55591) nil])
#@46 Toogle the option for showing ignored files.
(defalias 'git-toggle-show-ignored #[nil "?\211\203\302\303!\210\304	\305\306\307\310%\210\311 \210\312	!\210\302\313!\207\314 \207" [git-show-ignored git-status message "Inserting ignored files..." git-run-ls-files-with-excludes nil ignored "-o" "-i" git-refresh-files git-refresh-ewoc-hf "Inserting ignored files...done" git-remove-handled] 6 (#$ . 55801) nil])
#@46 Toogle the option for showing unknown files.
(defalias 'git-toggle-show-unknown #[nil "?\211\203\302\303!\210\304	\305\306\307$\210\310 \210\311	!\210\302\312!\207\313 \207" [git-show-unknown git-status message "Inserting unknown files..." git-run-ls-files-with-excludes nil unknown "-o" git-refresh-files git-refresh-ewoc-hf "Inserting unknown files...done" git-remove-handled] 5 (#$ . 56220) nil])
#@61 Expand the directory represented by INFO to list its files.
(defalias 'git-expand-directory #[(info) "\304\305H	>\204\306\307\310\311#\210\312H\313\"\314=\205E\305H	>\204'\306\307\315\311#\210\316H\317\nC\320#\210\321\n\322PC\323\324$\210\325 \210\326!\210)\327\207" [info cl-struct-git-fileinfo-tags dir git-status lsh 0 error "%s accessing a non-%s" git-fileinfo->new-perm git-fileinfo 5 -9 72 git-fileinfo->name 3 git-set-filenames-state nil git-run-ls-files-with-excludes "/" unknown "-o" git-refresh-files git-refresh-ewoc-hf t] 5 (#$ . 56630)])
#@39 Setup a buffer for displaying a diff.
(defalias 'git-setup-diff-buffer #[(buffer) "r\nq\210\304 \210eb\210	\305*\306\n!\210\307 p=\205\310 \207" [default-directory dir buffer buffer-read-only diff-mode t display-buffer window-buffer shrink-window-if-larger-than-buffer] 2 (#$ . 57199)])
#@39 Diff the marked file(s) against HEAD.
(defalias 'git-diff-file #[nil "\301 \302\303\304\305\306\307\310\311\312\313!&!)\207" [files git-marked-files git-setup-diff-buffer apply git-run-command-buffer "*git-diff*" "diff-index" "-p" "-M" "HEAD" "--" git-get-filenames] 11 (#$ . 57498) nil])
#@94 Diff the marked file(s) against the first merge head (or the nth one with a numeric prefix).
(defalias 'git-diff-file-merge-head #[(arg) "\303 \304 \204\305\306!\210\307\310\311\312\313\314\315\nS8\206\316\317\320	!&!*\207" [merge-heads files arg git-marked-files git-get-merge-heads error "No merge in progress" git-setup-diff-buffer apply git-run-command-buffer "*git-diff*" "diff-index" "-p" "-M" "HEAD" "--" git-get-filenames] 11 (#$ . 57796) "p"])
#@63 Diff the marked unmerged file(s) against the specified stage.
(defalias 'git-diff-unmerged-file #[(stage) "\302 \303\304\305\306\307\310	\311\312!&!)\207" [files stage git-marked-files git-setup-diff-buffer apply git-run-command-buffer "*git-diff*" "diff-files" "-p" "--" git-get-filenames] 10 (#$ . 58264)])
#@64 Diff the marked unmerged file(s) against the common base file.
(defalias 'git-diff-file-base #[nil "\300\301!\207" [git-diff-unmerged-file "-1"] 2 (#$ . 58582) nil])
#@64 Diff the marked unmerged file(s) against my pre-merge version.
(defalias 'git-diff-file-mine #[nil "\300\301!\207" [git-diff-unmerged-file "-2"] 2 (#$ . 58754) nil])
#@73 Diff the marked unmerged file(s) against the other's pre-merge version.
(defalias 'git-diff-file-other #[nil "\300\301!\207" [git-diff-unmerged-file "-3"] 2 (#$ . 58926) nil])
#@52 Do a combined diff of the marked unmerged file(s).
(defalias 'git-diff-file-combined #[nil "\300\301!\207" [git-diff-unmerged-file "-c"] 2 (#$ . 59108) nil])
#@50 Perform an interactive diff on the current file.
(defalias 'git-diff-file-idiff #[nil "\304\305\306\307#\211G\310=\204\311\312!\210\313!@\314	!\315	\316P\317\320\321	P$\322\n\",\207" [files filename buff1 buff2 git-marked-files-state added deleted modified 1 error "Cannot perform an interactive diff on multiple files." git-get-filenames find-file-noselect git-run-command-buffer ".~HEAD~" "cat-file" "blob" "HEAD:" ediff-buffers] 7 (#$ . 59272) nil])
#@49 Display a log of changes to the marked file(s).
(defalias 'git-log-file #[nil "\305 	\306\307\310\311\312\313\314\315!&rq\210eb\210\316)\317!+\207" [files git-commits-coding-system coding-system-for-read buffer buffer-read-only git-marked-files apply git-run-command-buffer "*git-log*" "rev-list" "--pretty" "HEAD" "--" git-get-filenames t display-buffer] 9 (#$ . 59739) nil])
#@63 Return a list of marked files for use in the log-edit buffer.
(defalias 'git-log-edit-files #[nil "rq\210\301\302\303\304\305#!)\207" [log-edit-parent-buffer git-get-filenames git-marked-files-state added deleted modified] 5 (#$ . 60130)])
#@73 Run a diff of the current files being committed from a log-edit buffer.
(defalias 'git-log-edit-diff #[nil "rq\210\301 )\207" [log-edit-parent-buffer git-diff-file] 1 (#$ . 60377)])
#@74 Append a Signed-off-by entry to the current buffer, avoiding duplicates.
(defalias 'git-append-sign-off #[(name email) "\304\305	#\306eb\210\307\310\311!P\312\306#?\205.eb\210\307\313\312\306#\204'\314Pdb\210\314\261*\207" [name email case-fold-search sign-off format "Signed-off-by: %s <%s>" t re-search-forward "^" regexp-quote nil "^Signed-off-by: " "\n"] 4 (#$ . 60566)])
#@36 Setup the log buffer for a commit.
(defalias 'git-setup-log-buffer #[(buffer &optional merge-heads author-name author-email subject date msg) "\204\306\307!\210	\310 \311 \n$r%q\210\312$!\210\313 \210\314\315\316&\206)
'\206/\f(\203<\315\317(\"\202=\320)\203N\315\321\322\323)\324#\"\202O\320%\325\326#\314*\325\327#\330\261\210+\203h+\331\261\210,\203v,\330\261\210\202\215\332\333!\203\203\334\333!\210\202\215\332\335!\203\215\334\335!\210eb\210\336\337\340\341#\203\236\342\330\341\211#\210\203\247\343
\f\"\210)%,\207" [git-status default-directory git-append-signed-off-by sign-off committer-email committer-name error "Not in git-status buffer." git-get-committer-name git-get-committer-email cd erase-buffer propertize format "Author: %s <%s>\n%s%s" "Date: %s\n" "" "Merge: %s\n" mapconcat identity " " face git-header-face git-separator-face "\n" "\n\n" file-readable-p ".git/rebase-apply/msg" insert-file-contents ".git/MERGE_MSG" re-search-forward "\n+\\'" nil t replace-match git-append-sign-off dir buffer author-name author-email date merge-heads git-log-msg-separator subject msg] 12 (#$ . 60958)])
(byte-code "\300\301N\204\302\300\301\303\304!#\210\305\306!\204\302\306\307\310#\210\300\207" [git-log-edit-mode-hook variable-documentation put purecopy "Hook run when entering Git-Log-Edit mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp git-log-edit-mode-map definition-name git-log-edit-mode] 5)
(defvar git-log-edit-mode-map (make-sparse-keymap))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\305\306!\204\302\306\307\310#\210\300\207" [git-log-edit-mode-map variable-documentation put purecopy "Keymap for `git-log-edit-mode'." boundp git-log-edit-mode-syntax-table definition-name git-log-edit-mode] 5)
(defvar git-log-edit-mode-syntax-table (make-syntax-table))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\302\305\306\307#\207" [git-log-edit-mode-syntax-table variable-documentation put purecopy "Syntax table for `git-log-edit-mode'." git-log-edit-mode-abbrev-table definition-name git-log-edit-mode] 5)
(defvar git-log-edit-mode-abbrev-table (progn (define-abbrev-table 'git-log-edit-mode-abbrev-table nil) git-log-edit-mode-abbrev-table))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\302\305\306\307#\207" [git-log-edit-mode-abbrev-table variable-documentation put purecopy "Abbrev table for `git-log-edit-mode'." git-log-edit-mode derived-mode-parent log-edit-mode] 5)
#@280 Major mode for editing git log messages.

Set up git-specific `font-lock-keywords' for `log-edit-mode'.

In addition to any hooks its parent mode might have run,
this mode runs the hook `git-log-edit-mode-hook', as the final step
during initialization.

\{git-log-edit-mode-map}
(defalias 'git-log-edit-mode #[nil "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315!\204'\316\317 \"\210\320\f!\211\2036
\321 =\203<\322\f\323 \"\210)\324\325\"\204V=\204V\326\325C#\210\327!\210\330\f!\210\306\331!\210\332)\333\334!\207" [delay-mode-hooks major-mode mode-name git-log-edit-mode-map git-log-edit-mode-syntax-table parent make-local-variable t log-edit-mode git-log-edit-mode "Git-Log-Edit" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table font-lock-defaults (git-log-edit-font-lock-keywords t t) run-mode-hooks git-log-edit-mode-hook git-log-edit-mode-abbrev-table local-abbrev-table] 6 (#$ . 63525) nil])
#@57 Commit the marked file(s), asking for a commit message.
(defalias 'git-commit-file #[nil "\204\306\307!\210\310 \205\254\311\312!\313 \314\211\211\211)\315)!\316=\203z\317\320!\203n\321\322!*r*q\210\323\216\324\320!\210eb\210\325\326\314\327#\203O\330\331!\330\332!eb\210\325\333\314\327#\203^\330\331!eb\210\325\334\314\327#\203m\330\331!+\335)\336 \f\n	&\210\337\340!\203\214\341\342\314\343)\344%\210\202\225\341\342\314\345)\344%\210\346+!\347P,
-\325\346+\350P!\314\327#.\207" [git-status date subject author-email author-name coding-system error "Not in git-status buffer." git-run-pre-commit-hook get-buffer-create "*git-commit*" git-get-commits-coding-system nil buffer-size 0 file-readable-p ".git/rebase-apply/info" generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1=#:temp-buffer buffer-name kill-buffer] 2)) insert-file-contents re-search-forward "^Author: \\(.*\\)\nEmail: \\(.*\\)$" t match-string 1 2 "^Subject: \\(.*\\)$" "^Date: \\(.*\\)$" git-setup-log-buffer git-get-merge-heads boundp log-edit-diff-function log-edit git-do-commit ((log-edit-listfun . git-log-edit-files) (log-edit-diff-function . git-log-edit-diff)) git-log-edit-mode git-log-edit-files regexp-quote "$\\|Author: \\|Date: \\|Merge: \\|Signed-off-by: \\|\f\\|[ 	]*$" "\n" buffer #1# git-log-msg-separator paragraph-separate buffer-file-coding-system] 7 (#$ . 64657) nil])
#@54 Setup the commit buffer with the contents of COMMIT.
(defalias 'git-setup-commit-buffer #[(commit) "\306\211\211\211\211\211\307\310!\"r\"q\210\311\216\312 #\313\314\315\316\317\320$&\210eb\210\321\322\306\314#\203:\323\324\325!\326\"A\321\327\306\314#\203J\324\325!\324\330!\321\331\306\314#\203V\324\325!\321\332\306\314#\203g\324\325!B\202V\237\211\211A@\203\204\333@G!\203\204\211A@\204p,\334\335\336!
\f\n	\337\340\341#&.\207" [msg date subject author-email author-name parents nil generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1=#:temp-buffer buffer-name kill-buffer] 2)) git-get-logoutput-coding-system git-call-process t "log" "-1" "--pretty=medium" "--abbrev=40" re-search-forward "^Merge: *\\(.*\\)$" split-string match-string 1 " +" "^Author: *\\(.*\\) <\\(.*\\)>$" 2 "^Date: *\\(.*\\)$" "^    \\(.*\\)$" zerop git-setup-log-buffer get-buffer-create "*git-commit*" mapconcat identity "\n" #1# coding-system commit] 12 (#$ . 66085)])
#@53 Retrieve a sorted list of files modified by COMMIT.
(defalias 'git-get-commit-files #[(commit) "\303\304\305!r	q\210\306\216\307\310\311\312\313\314\315\316\317\n&	\210eb\210\320\321\303\310\322$\203.\323\322!B\202+\324\325\")\207" [files #1=#:temp-buffer commit nil generate-new-buffer " *temp*" ((byte-code "\301!\203\n\302!\210\301\207" [#1# buffer-name kill-buffer] 2)) git-call-process t "diff-tree" "-m" "-r" "-z" "--name-only" "--no-commit-id" "--root" re-search-forward "\\([^]*\\)" 1 match-string sort string-lessp] 10 (#$ . 67104)])
#@81 Ask for a commit name, with completion for local branch, remote branch and tag.
(defalias 'git-read-commit-name #[(prompt &optional default) "\302\303\304\305\306\307\310 \"BBB\311\211\211\211	&\207" [prompt default completing-read "HEAD" "ORIG_HEAD" "FETCH_HEAD" mapcar car git-for-each-ref nil] 8 (#$ . 67666)])
#@97 Checkout a branch, tag, or any commit.
Use a prefix arg if git should merge while checking out.
(defalias 'git-checkout #[(branch &optional merge) "\204\304\305!\210	\306D\203\307\nB\310\311\312\n#\205\313 )\207" [git-status branch args merge error "Not in git-status buffer." "--" "-m" apply git-call-process-display-error "checkout" git-update-status-files] 4 (#$ . 67988) (list (git-read-commit-name "Checkout: ") current-prefix-arg)])
#@57 Create a branch from the current HEAD and switch to it.
(defalias 'git-branch #[(branch) "\204\302\303!\210\304\305	P!\2030\306\307\310	\"!\203)\311\312\313	#\2036\311\314	\"\210\2026\315\316!\210\2026\311\314\317	#\210\320!\207" [git-status branch error "Not in git-status buffer." git-rev-parse "refs/heads/" yes-or-no-p format "Branch %s already exists, replace it? " git-call-process-display-error "branch" "-f" "checkout" message "Canceled." "-b" git-refresh-ewoc-hf] 4 (#$ . 68443) (list (git-read-commit-name "Branch: "))])
#@85 Undo the last commit on HEAD, and set things up to commit an
amended version of it.
(defalias 'git-amend-commit #[nil "\204\303\304!\210\305 \203\303\306!\210\307\310!\311	!\307\312!\203'\313\314\315\312#\2023\316\317	\"\205A\316\310\320	#\205A\321\n\322\"\210\323	!\210\324 *\207" [git-status commit files error "Not in git-status buffer." git-empty-db-p "No commit to amend." git-rev-parse "HEAD" git-get-commit-files "HEAD^" git-call-process-display-error "reset" "--soft" git-update-ref "ORIG_HEAD" nil git-update-status-files t git-setup-commit-buffer git-commit-file] 4 (#$ . 68989) nil])
#@23 Cherry-pick a commit.
(defalias 'git-cherry-pick-commit #[(arg) "\204\305\306!\210\307	\310P!\211\204\305\311	\"\210\307\n\312P!\203#\305\313!\210\314\n!\315\316\317\n#\320\f\"\210r\321\n!q\210eb\210\322\323\324\325\326$\203K\327\224b\210\202Ndb\210\330\n\331\261\210)\205[\332 +\207" [git-status arg commit ok files error "Not in git-status buffer." git-rev-parse "^0" "Not a valid commit '%s'." "^2" "Cannot cherry-pick a merge commit." git-get-commit-files git-call-process-display-error "cherry-pick" "-n" git-update-status-files git-setup-commit-buffer re-search-forward "^\n*Signed-off-by:" nil t 1 0 "(cherry picked from commit " ")\n" git-commit-file] 6 (#$ . 69601) (list (git-read-commit-name "Cherry-pick commit: "))])
#@18 Revert a commit.
(defalias 'git-revert-commit #[(arg) "\204\306\307!\210\310	\311P!\211\204\306\312	\"\210\310\n\313P!\203#\306\314!\210\315\n!\316\n!\317\320\321\n#\322
\"\210\323\324\f\"\203B\325\326\f\"\327\330\331!\332 \333\211\334\335\f\"\333\334\336\n\"&\210\205\\\337 ,\207" [git-status arg commit ok subject files error "Not in git-status buffer." git-rev-parse "^0" "Not a valid commit '%s'." "^2" "Cannot revert a merge commit." git-get-commit-files git-get-commit-description git-call-process-display-error "revert" "-n" git-update-status-files string-match "^[0-9a-f]+ - \\(.*\\)$" match-string 1 git-setup-log-buffer get-buffer-create "*git-commit*" git-get-merge-heads nil format "Revert \"%s\"" "This reverts commit %s.\n" git-commit-file] 11 (#$ . 70352) (list (git-read-commit-name "Revert commit: "))])
#@43 Visit the current file in its own buffer.
(defalias 'git-find-file #[nil "\204\304\305!\210\306!\211\307H)\310\n!?\205E\311\n\312H>\204'\304\313\314\315#\210\n\316H!\210\n\312H>\204:\304\313\317\315#\210\n\307H\320=\205E\321\322!)\207" [git-status cl-x info cl-struct-git-fileinfo-tags error "Not in git-status buffer." ewoc-locate 2 git-expand-directory find-file 0 "%s accessing a non-%s" git-fileinfo->name git-fileinfo 3 git-fileinfo->state unmerged smerge-mode 1] 6 (#$ . 71195) nil])
#@61 Visit the current file in its own buffer in another window.
(defalias 'git-find-file-other-window #[nil "\204\304\305!\210\306!\211\307H)\310\n\311H>\204 \304\312\313\314#\210\n\315H!\210\n\311H>\2043\304\312\316\314#\210\n\307H\317=\205=\320 )\207" [git-status cl-x info cl-struct-git-fileinfo-tags error "Not in git-status buffer." ewoc-locate 2 find-file-other-window 0 "%s accessing a non-%s" git-fileinfo->name git-fileinfo 3 git-fileinfo->state unmerged smerge-mode] 6 (#$ . 71703) nil])
#@51 Visit the current file in interactive merge mode.
(defalias 'git-find-file-imerge #[nil "\204\304\305!\210\306!\211\307H)\310\n\311H>\204 \304\312\313\314#\210\n\315H!\210\316 )\207" [git-status cl-x info cl-struct-git-fileinfo-tags error "Not in git-status buffer." ewoc-locate 2 find-file 0 "%s accessing a non-%s" git-fileinfo->name git-fileinfo 3 smerge-ediff] 6 (#$ . 72214) nil])
#@42 View the current file in its own buffer.
(defalias 'git-view-file #[nil "\204\304\305!\210\306!\211\307H)\310\n\311H>\204 \304\312\313\314#\210\n\315H!)\207" [git-status cl-x info cl-struct-git-fileinfo-tags error "Not in git-status buffer." ewoc-locate 2 view-file 0 "%s accessing a non-%s" git-fileinfo->name git-fileinfo 3] 6 (#$ . 72614) nil])
#@32 Refresh the git status buffer.
(defalias 'git-refresh-status #[nil "\204\301\302!\210\303\304!\210\305 \210\303\306!\207" [git-status error "Not in git-status buffer." message "Refreshing git status..." git-update-status-files "Refreshing git status...done"] 2 (#$ . 72976) nil])
#@23 Quit git-status mode.
(defalias 'git-status-quit #[nil "\300 \207" [bury-buffer] 1 (#$ . 73265) nil])
#@39 Run after `git-status-mode' is setup.
(defvar git-status-mode-hook nil (#$ . 73373))
#@28 Keymap for git major mode.
(defvar git-status-mode-map nil (#$ . 73464))
#@51 List of all files managed by the git-status mode.
(defvar git-status nil (#$ . 73543))
(byte-code "\204\200\305 \306 \306 \306 \307\f!\210\310\f\311\312#\210\310\f\313\312#\210\310\f\314\315#\210\310\f\316\317#\210\310\f\320\321#\210\310\f\322#\210\310\f\323\n#\210\310\f\324\325#\210\310\f\326\327#\210\310\f\330\327#\210\310\f\331\332#\210\310\f\333\334#\210\310\f\335\336#\210\310\f\337\340#\210\310\f\341\342#\210\310\f\343\344#\210\310\f\345\315#\210\310\f\346\347#\210\310\f\350\351#\210\310\f\352\353#\210\310\f\354\355#\210\310\f\356\357#\210\310\f\360\361#\210\310\f\362	#\210\310\f\363\364#\210\310\f\365\366#\210\310\f\367\370#\210\310\f\371\372#\210\310\f\373\374#\210\310\f\375\376#\210\310\f\377\201@#\210\310\201A\201B#\210\310\201C\201D#\210\310\201E\201F#\210\310\201G\201H#\210\310\201I\201J#\210\310\n\201K\201L#\210\310\n\320\201M#\210\310\n\324\325#\210\310\n\201N\201O#\210\310\n\201P\201Q#\210\310\n\313\201R#\210\310\n\341\201S#\210\310\n\350\201T#\210\310	\365\201U#\210\310	\333\201V#\210\310	\201W\201X#\210\310	\341\364#\210\f,\201Y\201Z!\210\201[\201\\\201]\201^$\210\201_\201`\201a\201b#\207" [git-status-mode-map toggle-map diff-map commit-map map make-keymap make-sparse-keymap suppress-keymap define-key "?" git-help "h" " " git-next-file "a" git-add-file "c" git-commit-file "" "d" "=" git-diff-file "f" git-find-file "
" "g" git-refresh-status "i" git-ignore-file "I" git-insert-file "l" git-log-file "m" git-mark-file "M" git-mark-all "n" "N" git-next-unmerged-file "o" git-find-file-other-window "p" git-prev-file "P" git-prev-unmerged-file "q" git-status-quit "r" git-remove-file "t" "T" git-toggle-all-marks "u" git-unmark-file "U" git-revert-file "v" git-view-file "x" git-remove-handled "" git-unmark-file-up "\377" git-unmark-all "" git-amend-commit "" git-branch "" git-checkout "" git-cherry-pick-commit "" git-revert-commit "b" git-diff-file-base git-diff-file-combined "e" git-diff-file-idiff "E" git-find-file-imerge git-diff-file-merge-head git-diff-file-mine git-diff-file-other git-toggle-show-uptodate git-toggle-show-ignored "k" git-toggle-show-unknown (lambda (#1=#:def-tmp-var) (defvar git-menu #1# #2="Git Menu")) nil easy-menu-do-define git-menu #2# ("Git" ["Refresh" git-refresh-status t] ["Commit" git-commit-file t] ["Checkout..." git-checkout t] ["New Branch..." git-branch t] ["Cherry-pick Commit..." git-cherry-pick-commit t] ["Revert Commit..." git-revert-commit t] ("Merge" ["Next Unmerged File" git-next-unmerged-file t] ["Prev Unmerged File" git-prev-unmerged-file t] ["Interactive Merge File" git-find-file-imerge t] ["Diff Against Common Base File" git-diff-file-base t] ["Diff Combined" git-diff-file-combined t] ["Diff Against Merge Head" git-diff-file-merge-head t] ["Diff Against Mine" git-diff-file-mine t] ["Diff Against Other" git-diff-file-other t]) "--------" ["Add File" git-add-file t] ["Revert File" git-revert-file t] ["Ignore File" git-ignore-file t] ["Remove File" git-remove-file t] ["Insert File" git-insert-file t] "--------" ["Find File" git-find-file t] ["View File" git-view-file t] ["Diff File" git-diff-file t] ["Interactive Diff File" git-diff-file-idiff t] ["Log" git-log-file t] "--------" ["Mark" git-mark-file t] ["Mark All" git-mark-all t] ["Unmark" git-unmark-file t] ["Unmark All" git-unmark-all t] ["Toggle All Marks" git-toggle-all-marks t] ["Hide Handled Files" git-remove-handled t] "--------" ["Show Uptodate Files" git-toggle-show-uptodate :style toggle :selected git-show-uptodate] ["Show Ignored Files" git-toggle-show-ignored :style toggle :selected git-show-ignored] ["Show Unknown Files" git-toggle-show-unknown :style toggle :selected git-show-unknown] "--------" ["Quit" git-status-quit t]) put git-status-mode mode-class special] 5)
#@71 Major mode for interacting with Git.
Commands:
\{git-status-mode-map}
(defalias 'git-status-mode #[nil "\306 \210\307 \210\310\311\312\313\314\f!\210\315\316 \210\317\320\321\211#\322\323!\210
)\322\324!\210\322\325!\210\322\326!\210\322\327!\210\330\331!)\207" [mode-name major-mode goal-column buffer-read-only git-status-mode-map status kill-all-local-variables buffer-disable-undo "git status" git-status-mode 17 t use-local-map nil erase-buffer ewoc-create git-fileinfo-prettyprint "" make-local-variable git-status list-buffers-directory git-show-uptodate git-show-ignored git-show-unknown run-hooks git-status-mode-hook default-directory] 4 (#$ . 77351)])
#@60 Find the git status buffer handling a specified directory.
(defalias 'git-find-status-buffer #[(dir) "\306 \307!\310\211\2035	\2045@r\fq\210
\203-\n\307
!\230\203-\n\311=\203-\f*A\211\204
	+\207" [dir found fulldir list buffer list-buffers-directory buffer-list expand-file-name nil git-status-mode major-mode] 4 (#$ . 78032)])
#@35 Entry point into git-status mode.
(defalias 'git-status #[(dir) "\303!\304\305!\306P!\2036	\203\307!\206\310\311\312\"!\313\n!\210\314!\210\315 \210\316 \210eb\210\317\320\321\")\207\322\323\"\207" [dir git-reuse-status-buffer buffer git-get-top-dir file-exists-p file-name-as-directory ".git" git-find-status-buffer create-file-buffer expand-file-name "*git-status*" switch-to-buffer cd git-status-mode git-refresh-status add-hook after-save-hook git-update-saved-file message "%s is not a git working tree."] 4 (#$ . 78382) "DSelect directory: "])
#@105 Update the corresponding git-status buffer when a file is saved.
Meant to be used in `after-save-hook'.
(defalias 'git-update-saved-file #[nil "\305!\306\307\310\217\211\205\311\n!\211\2053rq\210\312	\n\"\313\314\f\"?\2052\315\306\316\317\320\f%\210\321\fC!*+\207" [buffer-file-name file dir buffer filename expand-file-name nil (byte-code "\301\302!!\207" [file git-get-top-dir file-name-directory] 3) ((error)) git-find-status-buffer file-relative-name string-match "^\\.git/" git-call-process "add" "--refresh" "--" git-update-status-files] 7 (#$ . 78952)])
#@28 Display help for Git mode.
(defalias 'git-help #[nil "\300\301!\207" [describe-function git-status-mode] 2 (#$ . 79530) nil])
(provide 'git)

SEA-GHOST - SHELL CODING BY SEA-GHOST