Git newbie here. Is there a way to synchronize two repositories, so that the current checked out files will be the latest version of all the changes?
What I have is this:
Desktop Server
------- ------
Change_X Change_Y
And I would like to enter some "magic" command, and then the changes are merged
Desktop Server
------- ------
Change_X Change_X
Change_Y Change_Y
One of the problems is that the desktop is a Windows machine behind a NAT, and I would like to avoid having to set up sshd on it. Basically I would like to do it all using ssh from the desktop to the server.
This seems like it should be trivial to do with git, but I couldn't figure out how to do it.
(I thought git push
would do the trick, but it turns out it doesn't make changes to currently checked-out branches, so the changes from the desktop don't get to the server)
Is there a way to do this with git, or am I off the track?
Solution: I downloaded the post-update script from here and put it in the hooks directory on the server, and now git push
causes the server to update with the changes. So basically the "magic command" resolves to:
git pull server:scripts/ master
git push server:scripts/
(scripts
is the folder I'm synchronizing)