uberwald
|
485da0c549
|
fix: add --non-interactive, stdin=DEVNULL, and LC_ALL env to svn._run_svn
|
2026-06-24 11:19:37 +02:00 |
|
uberwald
|
e0e368cc9a
|
fix: always advance last_svn_revision even when no new revs (already mapped)
|
2026-06-24 10:41:25 +02:00 |
|
uberwald
|
e3c28fea9d
|
feat: set svn:author revprop after commit/tag to preserve real author
|
2026-06-24 10:31:00 +02:00 |
|
uberwald
|
9c319b3396
|
fix: don't override --username in svn commit/copy (use auth_args for both auth and author)
|
2026-06-24 10:22:56 +02:00 |
|
uberwald
|
7baef3c799
|
fix: pass auth_args to svn commit and svn copy calls
|
2026-06-24 10:18:10 +02:00 |
|
uberwald
|
e20a1c7baf
|
fix: add --ignore-externals to svn checkout/update (unrelated repo)
|
2026-06-24 10:14:27 +02:00 |
|
uberwald
|
f7d97c2c79
|
fix: use C.UTF-8 instead of C locale for svn subprocess (breaks non-ASCII filenames)
|
2026-06-24 10:10:15 +02:00 |
|
uberwald
|
2cb6a4b230
|
fix: ref_exists also checks git-svn remote ref variant for imported tags/branches
|
2026-06-23 22:19:12 +02:00 |
|
uberwald
|
4d6326231b
|
fix: record converted ref mappings (refs/tags/*, refs/heads/*) during import
|
2026-06-23 22:03:43 +02:00 |
|
uberwald
|
3536053b44
|
fix: pre-write SVN password to stdin to avoid deadlock on prompt
|
2026-06-23 13:33:11 +02:00 |
|
uberwald
|
2422673584
|
fix: pipe SVN password to git svn stdin when prompted
|
2026-06-23 13:30:55 +02:00 |
|
uberwald
|
d533427cac
|
fix: cache SVN creds before git svn clone, feed /dev/null to stdin
|
2026-06-23 13:26:09 +02:00 |
|
uberwald
|
99a056d9fb
|
feat: thread SVN auth (username/password) through all svn call sites
|
2026-06-23 13:23:44 +02:00 |
|
uberwald
|
45fb8c40d0
|
feat: initial import — SVN↔Git bi-directional mirror for Gitea
Server-side sidecar daemon. Uses own SQLite mapping table (not git svn)
so Git commit hashes never change. Pure Python, zero framework deps.
Includes:
- SVN→Git sync engine with nested-directory tree reconstruction
- Git→SVN push with author mapping and working-copy management
- Branch/tag sync (svn copy → git branch/tag and reverse)
- Gitea integration (on-disk push/fetch, webhook receiver)
- Reconciliation tool for divergence recovery (assess + auto-fix)
- Full end-to-end regression test (bash, 34 checks)
- systemd unit and deployment docs
Only external dependency: PyYAML (config parsing).
|
2026-06-23 09:47:02 +02:00 |
|