Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
git
提交
061cc7cd
G
git
项目概览
李少辉-开发者
/
git
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
git
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
061cc7cd
编写于
8月 07, 2005
作者:
K
Kay Sievers
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
v056
上级
a59d4afd
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
14 addition
and
13 deletion
+14
-13
gitweb.cgi
gitweb.cgi
+14
-13
未找到文件。
gitweb.cgi
浏览文件 @
061cc7cd
...
...
@@ -14,7 +14,7 @@ use CGI::Carp qw(fatalsToBrowser);
my $cgi = new CGI;
my $version = "05
5
";
my $version = "05
6
";
my $projectroot = "/home/kay/public_html/pub/scm";
my $defaultprojects = "linux/kernel/git";
my $gitbin = "/home/kay/bin/git";
...
...
@@ -31,19 +31,19 @@ $ENV{'SHA1_FILE_DIRECTORY'} = "$projectroot/$project/objects";
# validate input
if (defined($project)
&&
$project =~ /(^|\/)(|\.|\.\.)($|\/)/) {
error_page("403 Permission denied
", "Invalid project parameter.");
die_error("
", "Invalid project parameter.");
}
if (defined($action)
&&
!$action =~ m/^[0-9a-zA-Z\.\-]+$/) {
error_page("403 Permission denied
", "Invalid action parameter.");
die_error("
", "Invalid action parameter.");
}
if (defined($hash)
&&
!($hash =~ m/^[0-9a-fA-F]{40}$/)) {
error_page("403 Permission denied
", "Invalid hash parameter.");
die_error("
", "Invalid hash parameter.");
}
if (defined($hash_parent)
&&
!($hash_parent =~ m/^[0-9a-fA-F]{40}$/)) {
error_page("403 Permission denied
", "Invalid parent hash parameter.");
die_error("
", "Invalid parent hash parameter.");
}
if (defined($time_back)
&&
!($time_back =~ m/^[0-9]+$/)) {
error_page("403 Permission denied
", "Invalid time parameter.");
die_error("
", "Invalid time parameter.");
} else {
$time_back = 1;
}
...
...
@@ -131,8 +131,8 @@ sub git_footer_html {
print "
</body>
\n
</html>
";
}
sub
error_page
{
my $status = shift || "403
Permission denied
";
sub
die_error
{
my $status = shift || "403
Forbidden
";
my $error = shift || "Malformed query, file missing or permission denied";
git_header_html($status);
print "
<div
class=
\"page_body\"
>
\n" .
...
...
@@ -145,7 +145,7 @@ sub error_page {
sub git_head {
my $path = shift;
open
my $fd, "$projectroot/$path/HEAD"
;
open
(my $fd, "$projectroot/$path/HEAD") || die_error("", "Invalid project directory.");
;
my $head =
<
$
fd
>
;
close $fd;
chomp $head;
...
...
@@ -179,6 +179,7 @@ sub git_commit {
$
co
{'
committer_name
'}
=~
s
/
<.
*
//;
}
}
if
(!
defined
($
co
{'
tree
'}))
{
die_error
("",
"
Invalid
commit
object.
");
}
$
co
{'
parents
'}
=
\@
parents
;
$
co
{'
parent
'}
=
$
parents
[0];
my
(@
comment) =
map
{
chomp
;
$
_
}
<$
fd
>
;
...
...
@@ -203,7 +204,7 @@ sub git_diff_html {
# create tmp from-file
if ($from ne "") {
$from_tmp = "$gittmp/gitweb_" . $$ . "_from";
open
my $fd2, "> $from_tmp"
;
open
(my $fd2, "> $from_tmp")
;
open my $fd, "-|", "$gitbin/cat-file blob $from";
my @file =
<
$
fd
>
;
print $fd2 @file;
...
...
@@ -317,7 +318,7 @@ if ($action eq "git-logo.png") {
# show list of default projects
if ($project eq "") {
opendir(my $fd, "$projectroot/$defaultprojects");
opendir(my $fd, "$projectroot/$defaultprojects")
|| die_error("", "No projects found.")
;
my (@users) = sort grep(!/^\./, readdir($fd));
closedir($fd);
git_header_html();
...
...
@@ -345,7 +346,7 @@ if ($action eq "") {
if ($action eq "blob") {
git_header_html();
print "
<div
class=
\"page_body\"
><pre><br/><br/>
\n";
open
my $fd, "-|", "$gitbin/cat-file blob $hash"
;
open
(my $fd, "-|", "$gitbin/cat-file blob $hash")
;
my $nr;
while (my $line =
<
$
fd
>
) {
$nr++;
...
...
@@ -595,5 +596,5 @@ if ($action eq "blob") {
print "
</div>
";
git_footer_html();
} else {
error_page("403 Forbidden
", "unknown action");
die_error("
", "unknown action");
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录