Well, in a local set up, you need to know the general solution, that is, $\gamma(x_0,t)$ for any $x_0=(c_1,\ldots,c_n)\in \mathbb{R}^n$. Alternatively, you can have $\gamma$ depending on another set of "equivalent" constants.
Suppose
$$
\gamma((c_1,\ldots,c_n),t)=(x_1((c_1,\ldots,c_n),t)\ldots,x_n((c_1,\ldots,c_n),t)).
$$
You only need to define
$$
\varphi: ((c_1,\ldots,c_n),t)\to (t,x_1,\ldots,x_n)
$$
and compute $\varphi^{-1}$. Then, you compute the pushforward of $\partial_t$:
$$
A:=\varphi_*(\partial_t)
$$
(observe that you need $\varphi^{-1}$ to calculate the components).
This vector field $A$ is
$$
A=\partial_t+f_1 \partial_{x_1}+f_2 \partial_{x_2}+\ldots+f_n \partial_{x_n},
$$
being $f_i$ your desired functions. Observe that depending on the expressions of the solution, the system could be non-autonomous, i.e., $f_i$ can depend on $t$.
Here you have a Maple code to compute the ODE system from a solution:
restart;
with(DifferentialGeometry); with(JetCalculus); with(Tools); with(ExteriorDifferentialSystems); with(PDEtools); with(LieAlgebras); with(LinearAlgebra); with(DEtools); with(Student[LinearAlgebra]);
DGsetup([s, c1, c2, c3, c4], M1);
baseformas1 := Tools:-DGinfo(M1, "FrameJetForms");
basecampos1 := Tools:-DGinfo(M1, "FrameJetVectors");
DGsetup([t, x, y, z, w], M2);
baseformas2 := Tools:-DGinfo(M2, "FrameJetForms");
basecampos2 := Tools:-DGinfo(M2, "FrameJetVectors");
xsol := (c1*s+c2)/(s-c3);
ysol := c2/(c4-s);
zsol := (c4*s+c3)/s;
wsol := c4/s+c1;
phi := Transformation(M1, M2, [t = s, x = xsol, y = ysol, z = zsol, w = wsol]);
invphi := InverseTransformation(phi);
A := simplify(Pushforward(phi, invphi, basecampos1[1]));
I have to say that if you have only one particular solution you can add to it enough constants to create a family of solutions as above, whenever these constants are "suficientely independent". Then your solution will be a solution of the just created ODE system.