Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F20134694
ports/latest-quarterly
No One
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Authored By
mat
Apr 15 2021, 2:32 PM
2021-04-15 14:32:02 (UTC+0)
Size
1 KB
Referenced Files
None
Subscribers
None
ports/latest-quarterly
View Options
#!/usr/local/bin/perl
# vim:sts=4 sw=4
use
strict
;
use
warnings
;
use
5.024
;
sub
short_ref
{
my
(
$ref
)
=
@_
;
$ref
=~
s{refs/heads/}{}oms
;
return
$ref
;
}
my
$push_option_count
=
$ENV
{
GIT_PUSH_OPTION_COUNT
};
for
(
my
$i
=
0
;
$i
<
$push_option_count
;
++
$i
)
{
exit
0
if
$ENV
{
"GIT_PUSH_OPTION_${i}"
}
eq
"unsupported-quarterly"
;
}
my
@quarterlies
;
for
(
qx{git show-ref --heads}
)
{
chomp
;
my
(
$hash
,
$ref
)
=
split
/ /
;
next
if
$ref
!~
m{refs/heads/\d\d\d\dQ\d\z}oms
;
push
@quarterlies
,
$ref
;
}
@quarterlies
=
sort
@quarterlies
;
my
$latest
=
$quarterlies
[
-
1
];
foreach
(
<STDIN>
)
{
chomp
;
my
(
$old
,
$new
,
$ref
)
=
split
/ /
;
next
if
$ref
!~
m{^refs/heads/20\d\dQ\d\z}oms
;
next
if
$ref
eq
$latest
;
die
"\n================================================================\n"
.
"$ENV{GL_USER}, you are pushing a commit to ${\(short_ref($ref))} which is not\n"
.
"the latest quarterly branch. The latest is ${\(short_ref($latest))}.\n"
.
"\n"
.
"Please check that you really mean to do this, and if you do, use:\n"
.
"\tgit push --push-option=unsupported-quarterly\n"
.
"================================================================\n"
}
exit
0
;
File Metadata
Details
Attached
Mime Type
text/plain; charset=utf-8
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3597477
Default Alt Text
ports/latest-quarterly (1 KB)
Attached To
Mode
P492 ports/latest-quarterly
Attached
Detach File
Event Timeline
Log In to Comment