<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dotemacs/modules/reconcile-open-repos.el, branch load-graph-classify-start</title>
<subtitle>My Emacs configuration
</subtitle>
<id>https://git.cjennings.net/dotemacs/atom?h=load-graph-classify-start</id>
<link rel='self' href='https://git.cjennings.net/dotemacs/atom?h=load-graph-classify-start'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/'/>
<updated>2026-05-10T07:44:10+00:00</updated>
<entry>
<title>Make repo reconciliation review-first</title>
<updated>2026-05-10T07:44:10+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-05-10T07:44:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=5a46d415df75b8b0168e2cf48b30fe463c01a77c'/>
<id>urn:sha1:5a46d415df75b8b0168e2cf48b30fe463c01a77c</id>
<content type='text'>
Stop automatically stashing, pulling, and popping dirty repos during reconciliation. Clean repos still pull, dirty repos open Magit for review, and results now include structured statuses, skip reasons, pruning, and a summary.
</content>
</entry>
<entry>
<title>fix(reconcile): restore repo iteration under projects-dir and code-dir</title>
<updated>2026-04-19T11:54:01+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-19T11:54:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=151d49d01dfe441b59d6dab30033b02d5b13523c'/>
<id>urn:sha1:151d49d01dfe441b59d6dab30033b02d5b13523c</id>
<content type='text'>
The outer dolist in cj/check-for-open-work guarded its body with
(boundp 'base-dir), which always returns nil under lexical-binding
because base-dir is a lexical loop variable. Every repo under
projects-dir and code-dir was silently skipped; only org-dir and
user-emacs-directory (both top-level defvars) still got reconciled.

Remove the bogus boundp check. Add regression tests covering the
entry point itself — the existing suite only exercised the helpers.
</content>
</entry>
<entry>
<title>refactor(reconcile): extract helpers, add recursive repo discovery and 28 tests</title>
<updated>2026-04-19T11:33:06+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-19T11:33:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=bdf3058542bbce298b435b301c7863b9d81d5bf4'/>
<id>urn:sha1:bdf3058542bbce298b435b301c7863b9d81d5bf4</id>
<content type='text'>
Extract should-skip-p, pull-clean, pull-dirty from 6-level nested
reconcile-git-directory. Make find-git-repos recurse into sub-repos.
</content>
</entry>
<entry>
<title>fix: make this function recursive</title>
<updated>2026-04-19T00:27:03+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-19T00:27:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=5cd7ca13005680b3e7bdac48dedf9cfbbfbcaa59'/>
<id>urn:sha1:5cd7ca13005680b3e7bdac48dedf9cfbbfbcaa59</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix: fix M-P by removing autoload cookie from keybinding</title>
<updated>2026-04-19T00:18:38+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-19T00:18:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=5f4e041fc1db94a7c426d06cd02ad57110fa3972'/>
<id>urn:sha1:5f4e041fc1db94a7c426d06cd02ad57110fa3972</id>
<content type='text'>
</content>
</entry>
<entry>
<title>refactor(reconcile-open-repos): Use git pull --rebase for cleaner history</title>
<updated>2025-11-15T20:11:50+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2025-11-15T20:11:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=c2351efe7e1d813e58482b12c87659c9aa41f174'/>
<id>urn:sha1:c2351efe7e1d813e58482b12c87659c9aa41f174</id>
<content type='text'>
Changed from merge strategy to rebase strategy when pulling updates
in the multi-repo reconciliation workflow. This avoids creating
unnecessary merge commits and maintains linear history.

Changes:
- Line 54: git pull --quiet → git pull --rebase --quiet (clean repos)
- Line 64: git pull --quiet → git pull --rebase --quiet (dirty repos)

Benefits:
- Cleaner git history (no merge commits for simple pulls)
- Consistent with best practices for personal development
- Aligns with git pull --rebase --autostash used elsewhere

The workflow still maintains its error handling and Magit integration
for conflict resolution.
</content>
</entry>
<entry>
<title>chore: Remove redundant autoload directives from modules</title>
<updated>2025-10-27T04:06:31+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2025-10-27T04:06:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=cd64af4642fd54a4d7b7be93bfb317fc64f623a6'/>
<id>urn:sha1:cd64af4642fd54a4d7b7be93bfb317fc64f623a6</id>
<content type='text'>
Remove unnecessary autoload directives from various functions across
multiple modules, cleaning up the codebase and improving
readability. These directives were redundant and not needed for the
current project setup.
</content>
</entry>
<entry>
<title>feat:reconcile-open-repos: enhance git repository reconciliation</title>
<updated>2025-10-20T22:18:13+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2025-10-20T22:18:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=afa913e3fd4715141d4d750aef3f1130effe1109'/>
<id>urn:sha1:afa913e3fd4715141d4d750aef3f1130effe1109</id>
<content type='text'>
Improve the workflow for synchronizing git repositories across
projects. Add detailed commentary and handle edge cases for stash,
pull, and stash pop operations. Implement checks for project
directories and dependencies defined in init.el, enhancing
robustness against undefined variables and failed git operations.
Ensure Magit opens for manual intervention when issues arise.
</content>
</entry>
<entry>
<title>refactor: created specific org-dir variable for ~/sync/org</title>
<updated>2025-10-18T05:21:37+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2025-10-18T05:21:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=2e875a849085b3d34d028c7ef3ca780ff78019b7'/>
<id>urn:sha1:2e875a849085b3d34d028c7ef3ca780ff78019b7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>changing repositories</title>
<updated>2025-10-12T16:47:26+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2025-10-12T16:47:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=092304d9e0ccc37cc0ddaa9b136457e56a1cac20'/>
<id>urn:sha1:092304d9e0ccc37cc0ddaa9b136457e56a1cac20</id>
<content type='text'>
</content>
</entry>
</feed>
