Git adapter lost commits before 7 days from database latest changeset
|Assignee:||Toshi MARUYAMA||% Done:|
We work with several branches on a git repo, but Redmine only seems to track changes from master branch. The problem is that our commit messages like:
"Fixes #241"... do not work if they are created on a "develop" branch for example. Redmine does not "see" these commit messages, therefore it can't mark the bug as fixed.
This seems to be a bug implementation of issue #1406
Database version : Postgresql 8.3
git version: 22.214.171.124
Redmine version: 1.0.4
scm: git: add test of "latin_1_path_encoding" branch revisions with from revision in adapter test (#7146).
"latin_1_path_encoding" branch is straight line.
scm: git: add test of revisions() in merged revisions in unit adapter test (#7146).
Git branch is a reference of specific revision.
Git branch is equivalent with Mercurial heads.
32ae898b7 in git test repository is a merged revision with two heads.
713f49446 and 4a07fe31b were in different branches before merged.
713f49446 and 4a07fe31b are descendants of 61b685fbe5.
4a07fe31b is a child of 61b685fbe5.
To get revisions from 713f4944648826f5 to master,
"git log" needs to return 4a07fe31b.
scm: git: use block to call revisions() in unit adapter test_revisions_master_all() (#7146).
scm: git: use block to call revisions() in unit adapter test_revisions_master_merged_rev() (#7146).
scm: git: use block to call revisions() in unit adapter test_revisions_branch_latin_1_path_encoding_all() (#7146).
scm: git: use block to call revisions() in unit adapter test_revisions_branch_latin_1_path_encoding_with_rev() (#7146).
scm: git: use block to call revisions() in unit adapter test_revisions_invalid_rev() (#7146).
#1 Updated by Toshi MARUYAMA over 2 years ago
The reason is Redmine parse only 1 week before the last known commit.
#6 Updated by Toshi MARUYAMA about 2 years ago
Redmine calls "git log --all --since='YYYY-MM-DD'" to fetch new changesets.
at source:1.1.2/lib/redmine/scm/adapters/git_adapter.rb#L114 .
If latest changeset in your database is "2011-03-30", Redmine calls "git log --all --since='2011-03-23'".