Thank you @cmdcolin From your reply, I understand as follow:
the variants in vcf file are listed based on the reference genome, not based on the sample genomes.
the reference genome is haploid, so that each pair of chromosome, there is only one corresponding reference "strand". So, there are 22 reference strands for 22 chromosome pairs, and one reference strand for X and one strand for Y.
If my understand is correct, each location on reference strand will compare with 4 possible value of the genome (2 chromosomes, each chromosome has 2 strands) In vcf files, I saw that there are two columns REF and ALT, which REF is the value from reference strand, and ALT contains values from actual samples. However, most of ALT only has 1 or 2 values (seperated by ','), not 4. What make me wrong understanding here?