This paper studies connectivity maintenance in robotic networks. We propose a distributed coordination algorithm that can be combined with the individual motion control strategies of the robotic agents to maintain the overall network connectivity. The coordination algorithm is based on the idea of maintaining the edges of an evolving spanning tree of the communication graph, termed the constraint tree. The evolution of this tree is determined by the preferences that each agent possesses as to which other agents it would like to maintain connectivity with, the network configuration, and the allowed set of re-arrangement operations. We analyze the reachability and repair properties of the proposed algorithm. Regarding reachability, we show that the constraint tree can transition between any two trees which are subgraphs of the current communication graph. Regarding repair, we show that the algorithm is robust against link drops in the constraint tree and can repair an initially disconne...