Homotopy equivalences between graphs realizing isomorphisms on $\pi_1$ my question is how to proof this statement:

Any isomorphism $φ:π_1(G_1,u_1) \to π_1(G_2,u_2)$ can be realized by a
  homotopy equivalence  $f:(G_1,u_1) \to (G_2,u_2)$

If $φ:π_1(G_1,u_1) \to π_1(G_2,u_2)$ be an arbitrary isomorphism then we say that $φ$ is realized by a homotopy equivalence $f:(G_1,u_1) \to (G_2,u_2)$ is $φ=f_*$ where $f_*$ is the induced homomorphism of the map $f:G_1 \to G_2$. 
$G_1 , G_2$ are connected Graphs. 
 A: For any pointed connected graph $(G,u)$, $\pi_1(G,u)$ is a free group generated by some set $S$ of loops.  Let $H$ be the graph which is just a wedge of circles, with one circle for each point of $S$, and let $v\in H$ be the wedge point.  There is a map $f:(H,v)\to (G,u)$ which sends each circle in $H$ to the corresponding loop of $S$.  We know that $\pi_1(H,v)$ is the free group on the loops corresponding to each of the circles, so the induced map $f_*:\pi_1(H,v)\to\pi_1(G,u)$ is an isomorphism.  It follows by the Whitehead theorem that $f$ is a homotopy equivalence.
Now let $(G_1,u_1)$ and $(G_2,u_2)$ be two pointed connected graphs, and let $\varphi:\pi_1(G_1,u_1)\to\pi_1(G_2,u_2)$ be an isomorphism.  Choose a set $S_1$ of free generators for $\pi_1(G_1,u_1)$, and let $S_2=\varphi(S_1)$.  As in the previous paragraph, we can use $S_1$ to define a homotopy equivalence $f_1:(H,v)\to(G_1,u_1)$, where $H$ is a wedge of circles indexed by $S_1$.  We can similarly use $S_2$ (identified with the circles of $H$ via $\varphi$) to get a homotopy equivalence $f_2:(H,v)\to(G_2,u_2)$.  The composition $f=f_2f_1^{-1}$ (where $f_1^{-1}$ is any homotopy inverse of $f_1$) is then a homotopy equivalence $(G_1,u_1)\to (G_2,u_2)$ which induces $\varphi$ on $\pi_1$.
More generally, a similar (but more complicated) argument shows that if you have two CW-complexes with only one nonzero homotopy group and an isomorphism between those homotopy groups, that isomorphism is realized by a homotopy equivalence.
