Based on a play by Edward Peple, during the Civil War a girl's mother dies, and her father is arrested as a spy; but she gets him pardoned.
At her birthday party Virgie Cary (Shirley Temple) shares her ice cream, and Uncle Billy (Bill Robinson) dances. Black children give her a doll. Captain Cary (John Boles) is informed that Fort Sumter was fired on, and war has begun. Virgie asks about war. Billy says a man wants to free the slaves. Virgie's father marches off. Virgie with a Confederate cap hits a Union officer with a rock using a sling shot and sings "Dixie" in defiance. Her mother (Karen Morley) says they are in enemy territory, and Virgie prays for her father to return. He arrives; Virgie sees that he is tired and sings. Cary is scouting for Sherman's army and learns that his wife has sold most of their animals. The slaves warn him, and Virgie cries as he leaves. While Mrs. Cary removes the sweaty horse, Union soldiers search the house. Sergeant Dudley (Guinn Williams) finds Virgie in black face and discovers she is white. Virgie tells his officer that he threw Mrs. Cary down the stairs, and the officer orders Dudley lashed.
Mrs. Cary, Virgie, and Billy flee in the rain during a battle. Billy goes and tells Cary that his wife is sick. He gets leave, and they cross Union lines in a swamp. Virgie comforts her mother. Billy and Cary arrive on foot. Cary tells Virgie it is beautiful, because her mother won't suffer anymore. When Union soldiers approach, Cary asks Virgie to lie, as he hides in a garret. Billy and Virgie dance, as Col. Morrison (Jack Holt) comes in. Virgie says her daddy left an hour ago. The colonel shouts that she is lying, and Cary surrenders. The colonel gives Cary a pass and a uniform so he can take Virgie to his sister in Richmond. Cary agrees not to scout. Cary shows his pass; but in a camp Sergeant Dudley recognizes Virgie. Cary tries to escape but is caught. He and Col. Morrison are in jail and will be shot in six days. Virgie and Billy visit him, and Virgie sings "Polly-wolly Doodle All the Day." She tells her father how she plays with a Yankee girl and asks why people have to kill each other. A soldier gives Billy money to go to Washington, and he and Virgie make more dancing. They call on Abraham Lincoln (Frank McGlynn Sr.), and Virgie tells what happened, as Lincoln shares an apple with her. Cary gave his word not to spy. Lincoln signs a pardon and sends it to General Grant. In the final scene at the prison Virgie sings and hugs her father and the colonel.
In this drama a little girl has been raised to be loyal to the South. Yet by her loving nature she is friendly with the slaves and is able to befriend enemy soldiers, implying that war and killing are absurd ways to try to solve human conflicts.