mirror of
https://github.com/logseq/logseq.git
synced 2026-06-01 19:01:22 +00:00
fix: git add unstaged files before committing
This commit is contained in:
@@ -106,6 +106,31 @@
|
||||
email
|
||||
parent))))
|
||||
|
||||
(defn add-all
|
||||
"Equivalent to `git add --all`. Returns changed files."
|
||||
[repo-url]
|
||||
(p/let [repo-dir (util/get-repo-dir repo-url)
|
||||
status-matrix (js/window.workerThread.statusMatrixChanged repo-dir)
|
||||
changed-files (for [[file head work-dir _stage] status-matrix
|
||||
:when (not= head work-dir)]
|
||||
file)
|
||||
unstaged-files (for [[file _head work-dir stage] status-matrix
|
||||
:when (not= work-dir stage)]
|
||||
file)
|
||||
_ (p/all (for [file unstaged-files]
|
||||
(add repo-url file)))]
|
||||
changed-files))
|
||||
|
||||
(defn commit-non-empty
|
||||
"Equivalent to `git add --all` and then `git commit` without `--allow-empty`."
|
||||
([repo-url message]
|
||||
(commit-non-empty repo-url message nil))
|
||||
([repo-url message parent]
|
||||
(p/let [changed-files (add-all repo-url)]
|
||||
(if (not-empty changed-files)
|
||||
(commit repo-url message parent)
|
||||
(p/resolved nil)))))
|
||||
|
||||
(defn read-commit
|
||||
[repo-url oid]
|
||||
(js/window.workerThread.readCommit (util/get-repo-dir repo-url)
|
||||
|
||||
@@ -139,8 +139,8 @@
|
||||
file-exists? (fs/create-if-not-exists repo-url repo-dir file-path content)]
|
||||
(when-not file-exists?
|
||||
(file-handler/reset-file! repo-url path content)
|
||||
(ui-handler/re-render-root!))
|
||||
(git-handler/git-add repo-url path))))))
|
||||
(ui-handler/re-render-root!)
|
||||
(git-handler/git-add repo-url path)))))))
|
||||
|
||||
(defn create-today-journal!
|
||||
[]
|
||||
@@ -427,7 +427,7 @@
|
||||
(state/input-idle? repo-url)
|
||||
(or (not= status :pushing)
|
||||
custom-commit?))
|
||||
(-> (p/let [files (js/window.workerThread.getChangedFiles (util/get-repo-dir (state/get-current-repo)))]
|
||||
(-> (p/let [files (git/add-all (state/get-current-repo))]
|
||||
(when (or (seq files) merge-push-no-diff?)
|
||||
;; auto commit if there are any un-committed changes
|
||||
(let [commit-message (if (string/blank? commit-message)
|
||||
|
||||
Reference in New Issue
Block a user