In de Amerikaanse Burgeroorlog diende Geddes in het leger van de Unie, als soldaat in de 8th Iowa Infantry. Hij werd gepromoveerd tot kapitein en vervolgens luitenant-kolonel, en na februari 1862 tot kolonel van de vrijwilligers. Hij nam deel aan de gevechten in
Shiloh, waar hij gewond en gevangen werd genomen. Hij werd een tijdlang in Madison (Georgia) en in de Libby-gevangenis in Richmond (Virginia) opgesloten. Na zijn uitwisseling vocht hij bij Vicksburg en Jackson. In oktober 1863 kreeg hij het bevel over een brigade en werd hij naar Brownsville, Texas gestuurd. Vervolgens diende hij als provost-marshal van de federale bezette Memphis, Tennessee, die hij redde van inbeslagname door de Confederate cavalerie onder Nathan Bedford Forrest. Hij leidde een brigade in de Mobile Campaign en vocht met onderscheid in de Slag bij Spanish Fort. Op 13 januari 1866 nomineerde president Andrew Johnson Geddes voor benoeming tot de rang van brevet brigadier-generaal van de vrijwilligers, met ingang van 5 juni 1865, en de Senaat van de Verenigde Staten bevestigde de benoeming op 12 maart 1866.