Need Help to sort text lines

I need to sort input file as below to display as below:

input.txt
User: my_id
File: oracle/scripts/ssc/ssc_db_info
User: your_id
File: pkg_files/BWSwsrms/request
User: your_id
File: pkg_files/BWSwsco/checkConfig.sh

OUTPUT:
User: my_id
File: oracle/scripts/ssc/ssc_db_info

User: your_id
File: pkg_files/BWSwsrms/request
File: pkg_files/BWSwsco/checkConfig.sh

Thanks in advance for your help!!!

nawk -f tq.awk input.txt

tq.awk:

$1 == "User:" {u=$2;next}
{a = (u in a) ? a ORS $0 : $0}
END {
  for(i in a)
    print "User:" i ORS a ORS
}

input:

User: 123
File: oracle/scripts/ssc/ssc_db_info
User: 456
File: pkg_files/BWSwsrms/request
User: 123
File: pkg_files/BWSwsco/checkConfig.sh
User: 456
File: /usr/bin/perl
User: 456
File: /local/default
User: 123
File: /etc/default

output:

User: 123
File: oracle/scripts/ssc/ssc_db_info
File: pkg_files/BWSwsco/checkConfig.sh
File: /etc/default

User: 456
File: pkg_files/BWSwsrms/request
File: /usr/bin/perl
File: /local/default

code:

#!/usr/bin/perl
use strict;
undef $/;
open FH,"<a.txt";
my $str=<FH>;
my @tmp=split("\n",$str);
my $cnt=($#tmp+1)/2;
my %hash;
for (my $i=0;$i<=$cnt-1;$i++){
	$hash{$tmp[2*$i]}.=(exists $hash{$tmp[2*$i]})?"\n".$tmp[2*$i+1]:$tmp[2*$i+1];
}
map {print $_,$hash{$_},"\n\n" } keys %hash;

Thank you guys!!!
Both replied work great!!!