Comparing two files and list the difference with common first line content of both files

I have two file as given below which shows the ACL permissions of each file. I need to compare the source file with target file and list down the difference as specified below in required output. Can someone help me on this ?

Source File
*************
# file: /local/test_1
# owner: own
# group: grp
user::rwx
group::r-x
other::r-x


# file: /local/test_1/2019
# owner: own
# group: grp
user::rwx
group::r-x
other::r-x

# file: /local/test_1/2019/10
# owner: own_01
# group: grp_02
user::rwx
group::r-x
other::r-x

# file: /local/test_1/2019/10.dum.txt
# owner: own_01
# group: grp_02
user::rwx
group::r-x
other::r-x

Target File :
*************
# file: /local/test_1
# owner: own
# group: grp
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::r-x 
default:other::r-x
default:group:sgg:rwx
default:group:sgg_1:r-x


# file: /local/test_1/2019
# owner: own
# group: grp
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::r-x 
default:group:sgg_1:r-x


# file: /local/test_1/2019/10
# owner: own_01
# group: grp_02
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::r-x 
default:other::r-x
default:group:sgg_0:rwx
default:group:sgg_3:r-x

# file: /local/test_1/2019/10.dum.txt
# owner: own_01
# group: grp_02
user::rwx
group::r-x
other::r-x

Required Output:
*********************

/local/test_1  default:user::rwx,default:group::r-x ,default:other::r-x,default:group:sgg:rwx,default:group:sgg_1:r-x
/local/test_1/2019 default:user::rwx,default:group::r-x ,default:group:sgg_1:r-x
/local/test_1/2019/10  default:user::rwx, default:group::r-x,default:other::r-x,default:group:sgg_0:rwx,default:group:sgg_3:r-x

How far would

$ diff -y -b --suppress-common-lines file1 <(sed 's/^# file.*/&\n\n&\n/' file2)
                                  >
                                  >    # file: /local/test_1
                                  >
                                  >    default:user::rwx
                                  >    default:group::r-x 
                                  >    default:other::r-x
                                  >    default:group:sgg:rwx
                                  >    default:group:sgg_1:r-x
                                  >
                                  >    # file: /local/test_1/2019
                                  >
                                  >    default:user::rwx
                                  >    default:group::r-x 
                                  >    default:group:sgg_1:r-x
                                  >
                                  >
                                  >    # file: /local/test_1/2019/10
                                  >
                                  >    default:user::rwx
                                  >    default:group::r-x 
                                  >    default:other::r-x
                                  >    default:group:sgg_0:rwx
                                  >    default:group:sgg_3:r-x
                                  >
                                  >    # file: /local/test_1/2019/10.dum.txt
                                  >

get you?

@Rudic : Im not sure what is the command you are using ?? Can you explain it ?

man diff :

If your OS / shell don't offer "process substitution", try also:

sed 's/^# file.*/&\n\n&\n/' file2 | diff -y -b --suppress-common-lines - file1

Only Diff command here will not give the required output .. im trying to bring the filename and non-matching patterns in single line as shown below

Required Output:
*********************

/local/test_1  default:user::rwx,default:group::r-x ,default:other::r-x,default:group:sgg:rwx,default:group:sgg_1:r-x
/local/test_1/2019 default:user::rwx,default:group::r-x ,default:group:sgg_1:r-x
/local/test_1/2019/10  default:user::rwx, default:group::r-x,default:other::r-x,default:group:sgg_0:rwx,default:group:sgg_3:r-x

--- Post updated at 05:08 PM ---

sed 's/^# file.*/&\n\n&\n/' file2 | diff -y -b --suppress-common-lines - file1

While using the above command , the result is partially matching but having <, > & whitespaces , could you please help me to get the desired output.