Modify ↓
Opened 9 years ago
Closed 9 years ago
#12758 closed defect (fixed)
repository sync failing with cached git repository which has a file started with colon character
| Reported by: | Jun Omae | Owned by: | Jun Omae |
|---|---|---|---|
| Priority: | normal | Milestone: | 1.0.14 |
| Component: | plugin/git | Version: | |
| Severity: | normal | Keywords: | |
| Cc: | Branch: | ||
| Release Notes: |
Fix |
||
| API Changes: | |||
| Internal Changes: | |||
Description
This issue is initially reported in gdiscussion:trac-users:FnOqc5nUlWg.
$ cd /var/git/testing.git
$ git log --name-status
commit baa7ee95a075cfd0a4de55bc4fe2ed599ed19109
Author: Jun Omae <jun66j5@gmail.com>
Date: Wed Apr 5 19:13:02 2017 +0900
testing...
A 0-file.txt
A :-file.txt
A a-file.txt
$ /venv/trac/1.0.13/bin/trac-admin /var/trac/1.0-sqlite
Trac [/var/trac/1.0-sqlite]> repository add '' /var/git/testing.git git
...
Trac [/var/trac/1.0-sqlite]> repository sync ''
...
2017-04-05 19:24:15,746 Trac[util] DEBUG: prefetch: 0 rows
IndexError: list index out of range
2017-04-05 19:24:15,747 Trac[console] ERROR: Exception in trac-admin command: u"repository sync ''"
Traceback (most recent call last):
File "/venv/trac/1.0.13/lib/python2.5/site-packages/trac/admin/console.py", line 110, in onecmd
rv = cmd.Cmd.onecmd(self, line) or 0
File "/usr/lib/python2.5/cmd.py", line 218, in onecmd
return self.default(line)
File "/venv/trac/1.0.13/lib/python2.5/site-packages/trac/admin/console.py", line 289, in default
return self.cmd_mgr.execute_command(*args)
File "/venv/trac/1.0.13/lib/python2.5/site-packages/trac/admin/api.py", line 127, in execute_command
return f(*fargs)
File "/venv/trac/1.0.13/lib/python2.5/site-packages/trac/versioncontrol/admin.py", line 159, in _do_sync
self._sync(reponame, rev, clean=False)
File "/venv/trac/1.0.13/lib/python2.5/site-packages/trac/versioncontrol/admin.py", line 143, in _sync
repos.sync(self._sync_feedback, clean=clean)
File "/venv/trac/1.0.13/lib/python2.5/site-packages/tracopt/versioncontrol/git/git_fs.py", line 141, in sync
self._insert_changeset(db, rev, cset)
File "/venv/trac/1.0.13/lib/python2.5/site-packages/trac/versioncontrol/cache.py", line 285, in _insert_changeset
for path, kind, action, bpath, brev in cset.get_changes():
File "/venv/trac/1.0.13/lib/python2.5/site-packages/tracopt/versioncontrol/git/git_fs.py", line 852, in get_changes
self.repos.git.diff_tree(parent, self.rev, find_renames=True):
File "/venv/trac/1.0.13/lib/python2.5/site-packages/tracopt/versioncontrol/git/PyGIT.py", line 1054, in diff_tree
yield __chg_tuple()
File "/venv/trac/1.0.13/lib/python2.5/site-packages/tracopt/versioncontrol/git/PyGIT.py", line 1045, in __chg_tuple
chg[6] = self._fs_to_unicode(chg[6])
IndexError: list index out of range
Attachments (0)
Change History (2)
comment:1 by , 9 years ago
| Owner: | set to |
|---|---|
| Status: | new → assigned |
comment:2 by , 9 years ago
| Release Notes: | modified (diff) |
|---|---|
| Resolution: | → fixed |
| Status: | assigned → closed |
Fixed in [15759] and merged in [15760-15761].
Note:
See TracTickets
for help on using tickets.



Proposed changes in [92f7469f1/jomae.git] (jomae.git@t12758+1.0).
For 1.2-stable, the changes will be merged after replacing
iterate.next()withnext(iterate).