On 20 April 2012 00:35, Mark Haney <markh@xxxxxxxxxxxx> wrote: > I'm new to git and repo management and I have an issue that I can't quite > figure out. Here's my problem. > > I have a server (SERVER) with a repo on it. It has all my code and > documentation. I pulled that repo onto my workstation for a local copy so I > could work at home or wherever with needing server access. My problem is I > can /pull/ from the repo on SERVER, but I can't /push/ any local changes > back to the server. I get an error message about master being checked out. > > I know a little about bare repos, but my understanding is that the bare repo > doesn't actually have the actual files in it, just the changes, which is not > what I want. I would like to have the copy on SERVER to work from if I > want, and also be able to pull/push changes from my local copy as well. > That way I have 2 copies of the data handy (not to mention the disc > backups. > > I'm fairly sure this can be setup, but I just don't know enough to figure it > out. Can someone point me in the right direction? > First things first, don't think that just because a bare repository does not have a working copy that it doesn't have all the data. Having a local working copy and a bare repository on a server _is_ keeping two separate copies of your data handy, just one is not immediately accessible (you have to check it out first). This may be your understanding, but it was unclear so I thought I would clarify. In terms of pushing to a remote, it is best practice to NOT push to a repository that has a checked out working copy. The main reason for this is that it becomes much easier to lose data, which is bad. Instead, if you want to work on SERVER as well as some other machine, it is safer to checkout the bare repository to another repository on SERVER, pulling and pushing to the bare repository in the same fashion as you would from a remote machine. Some more explanation can be found at http://gitready.com/advanced/2009/02/01/push-to-only-bare-repositories.html for example. Regards, Andrew Ardill -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html