| File TODO changed (mode: 100644) (index a6b74aa..0af8ec3) |
| 1 |
1 |
== Where I stopped last time == |
== Where I stopped last time == |
| 2 |
|
[ ] Test with an empty commit what happens in rg_git_log with patches == TRUE. |
|
| 3 |
2 |
[ ] |
[ ] |
| 4 |
3 |
|
|
| 5 |
4 |
== BEFORE NEXT RELEASE == |
== BEFORE NEXT RELEASE == |
|
5 |
|
[ ] Test with an empty commit what happens in rg_git_log with patches == TRUE. |
|
6 |
|
Can happen? Maybe for a rename? |
|
7 |
|
[ ] Add repo stats to ssh repo command. |
| 6 |
8 |
[ ] build rg_user_git_stats that will lookup email into stats and resolve them |
[ ] build rg_user_git_stats that will lookup email into stats and resolve them |
| 7 |
9 |
to be rg links? |
to be rg links? |
| 8 |
10 |
[ ] repo:stats: seems the number of commits is limited somehow! |
[ ] repo:stats: seems the number of commits is limited somehow! |
| File inc/git.inc.php changed (mode: 100644) (index 5b04442..8aa9f87) |
| ... |
... |
function rg_git_log($path, $max, $from, $to, $also_patch) |
| 694 |
694 |
if (!file_exists($path . "/refs/heads/master")) { |
if (!file_exists($path . "/refs/heads/master")) { |
| 695 |
695 |
if (!file_exists($path . "/.git/refs/heads/master")) { |
if (!file_exists($path . "/.git/refs/heads/master")) { |
| 696 |
696 |
rg_log("Repo is empty."); |
rg_log("Repo is empty."); |
|
697 |
|
$ret = array(); |
| 697 |
698 |
break; |
break; |
| 698 |
699 |
} |
} |
| 699 |
700 |
} |
} |
| |
| ... |
... |
function rg_git_log($path, $max, $from, $to, $also_patch) |
| 739 |
740 |
. $from_to; |
. $from_to; |
| 740 |
741 |
$a = rg_exec($cmd); |
$a = rg_exec($cmd); |
| 741 |
742 |
if ($a['ok'] != 1) { |
if ($a['ok'] != 1) { |
| 742 |
|
rg_git_set_error("error on log (" . $a['errmsg'] . ")"); |
|
| 743 |
|
rg_internal_error("Could not generate log."); |
|
|
743 |
|
rg_internal_error("error on log (" . $a['errmsg'] . ")"); |
|
744 |
|
rg_git_set_error("could not generate log; try again later"); |
| 744 |
745 |
break; |
break; |
| 745 |
746 |
} |
} |
| 746 |
747 |
|
|
| File inc/repo.inc.php changed (mode: 100644) (index c27873b..d97d4af) |
| ... |
... |
function rg_repo_discover($db, $op, $rg, $ui) |
| 1732 |
1732 |
*/ |
*/ |
| 1733 |
1733 |
function rg_repo_stats($rg) |
function rg_repo_stats($rg) |
| 1734 |
1734 |
{ |
{ |
| 1735 |
|
if ($rg['ri']['git_dir_done'] == 0) |
|
| 1736 |
|
return rg_template('repo/no_git_dir.html', $rg, TRUE /*xss*/); |
|
|
1735 |
|
rg_log_enter('repo_start'); |
| 1737 |
1736 |
|
|
| 1738 |
|
$path = rg_repo_path_by_id($rg['ri']['uid'], $rg['ri']['repo_id']); |
|
| 1739 |
|
$log = rg_git_log($path, 0 /*max*/, '', '', FALSE); |
|
| 1740 |
|
if ($log === FALSE) |
|
| 1741 |
|
return rg_template('internal_err.html', $rg, TRUE /*xss*/); |
|
|
1737 |
|
while (1) { |
|
1738 |
|
if ($rg['ri']['git_dir_done'] == 0) { |
|
1739 |
|
$ret = rg_template('repo/no_git_dir.html', $rg, TRUE /*xss*/); |
|
1740 |
|
break; |
|
1741 |
|
} |
|
1742 |
|
|
|
1743 |
|
$path = rg_repo_path_by_id($rg['ri']['uid'], $rg['ri']['repo_id']); |
|
1744 |
|
$log = rg_git_log($path, 0 /*max*/, '', '', FALSE); |
|
1745 |
|
if ($log === FALSE) { |
|
1746 |
|
$ret = rg_template('internal_err.html', $rg, TRUE /*xss*/); |
|
1747 |
|
break; |
|
1748 |
|
} |
| 1742 |
1749 |
|
|
| 1743 |
|
$s = rg_git_stats($log); |
|
| 1744 |
|
// TODO: can this return error? |
|
| 1745 |
|
rg_log_ml('DEBUG: stats: ' . print_r($s, TRUE)); |
|
| 1746 |
|
$rg['ri']['stats'] = $s['global']; |
|
|
1750 |
|
$s = rg_git_stats($log); |
|
1751 |
|
//rg_log_ml('DEBUG: stats: ' . print_r($s, TRUE)); |
|
1752 |
|
$rg['ri']['stats'] = $s['global']; |
| 1747 |
1753 |
|
|
| 1748 |
|
$rg['ri']['HTML:authors'] = rg_template_table('repo/stats/authors', |
|
| 1749 |
|
$s['authors'], $rg); |
|
|
1754 |
|
$rg['ri']['HTML:authors'] = rg_template_table('repo/stats/authors', |
|
1755 |
|
$s['authors'], $rg); |
| 1750 |
1756 |
|
|
| 1751 |
|
return rg_template('repo/stats/stats.html', $rg, TRUE /*xss*/); |
|
|
1757 |
|
$ret = rg_template('repo/stats/stats.html', $rg, TRUE /*xss*/); |
|
1758 |
|
break; |
|
1759 |
|
} |
|
1760 |
|
|
|
1761 |
|
rg_log_exit(); |
|
1762 |
|
return $ret; |
| 1752 |
1763 |
} |
} |
| 1753 |
1764 |
|
|
| 1754 |
1765 |
?> |
?> |
| File root/themes/default/repo/stats/stats.html changed (mode: 100644) (index 65dada6..c89d41f) |
| 1 |
1 |
Added on this site on <b>@@ri::itime_nice@@</b>.<br /> |
Added on this site on <b>@@ri::itime_nice@@</b>.<br /> |
| 2 |
2 |
Disk space used: <b>@@ri::disk_used_mb@@ MiB</b>.<br /> |
Disk space used: <b>@@ri::disk_used_mb@@ MiB</b>.<br /> |
| 3 |
3 |
Bugs reported: <b>@@ri::last_bug_id@@</b>.<br /> |
Bugs reported: <b>@@ri::last_bug_id@@</b>.<br /> |
|
4 |
|
|
|
5 |
|
@@if("@@ri::stats::start_date@@" != ""){{ |
| 4 |
6 |
<br /> |
<br /> |
| 5 |
7 |
Project started on <b>@@ri::stats::start_date@@</b> by <b>@@ri::stats::start_author@@</b>.<br /> |
Project started on <b>@@ri::stats::start_date@@</b> by <b>@@ri::stats::start_author@@</b>.<br /> |
| 6 |
8 |
Last commit on <b>@@ri::stats::last_date@@</b> by <b>@@ri::stats::last_author@@</b>.<br /> |
Last commit on <b>@@ri::stats::last_date@@</b> by <b>@@ri::stats::last_author@@</b>.<br /> |
| |
| ... |
... |
Number of lines added: <b>@@ri::stats::lines_add@@</b>.<br /> |
| 9 |
11 |
Number of lines deleted: <b>@@ri::stats::lines_del@@</b>.<br /> |
Number of lines deleted: <b>@@ri::stats::lines_del@@</b>.<br /> |
| 10 |
12 |
|
|
| 11 |
13 |
@@ri::authors@@ |
@@ri::authors@@ |
|
14 |
|
}} |
| File tests/git.php changed (mode: 100644) (index ecef385..d8f39cd) |
| ... |
... |
$rg_no_db = TRUE; |
| 13 |
13 |
require_once("common.php"); |
require_once("common.php"); |
| 14 |
14 |
|
|
| 15 |
15 |
|
|
|
16 |
|
rg_log(''); |
|
17 |
|
rg_log("Testing rg_git_log with a rename"); |
|
18 |
|
system("git init git_rename; cd git_rename;" |
|
19 |
|
. " touch a; git add a; git commit -a -m \"aaa\";" |
|
20 |
|
. " git mv a b; git commit -a -m \"bbb\""); |
|
21 |
|
$r = rg_git_log('git_rename/.git', 1, '', '', TRUE); |
|
22 |
|
// we do not test here nothing, we will let err- files "speak" |
|
23 |
|
system("rm -rf git_rename"); |
|
24 |
|
|
|
25 |
|
|
| 16 |
26 |
rg_log(''); |
rg_log(''); |
| 17 |
27 |
rg_log("Testing rg_git_log for binary files"); |
rg_log("Testing rg_git_log for binary files"); |
| 18 |
28 |
system("git init git_bin; cd git_bin;" |
system("git init git_bin; cd git_bin;" |