I'll do it the long way first and then with a tiny bit of bash scripting:
# ssh into your server ssh jtprince@yourserver.domain.edu # on remote machine: mkdir git mkdir git/project1.git && cd git/project1.git git --bare init exit # on local machine mkdir project1 && cd project1 # if you don't already have a project # make a commit (you need at least one commit) git init echo "some text" > file.txt git add . git commit -m 'init commit' # now we will push it to the server git push ssh://jtprince@yourserver.domain.edu/home/jtprince/git/project1.git master # we still need to link our git folder with the server git remote add origin ssh://jtprince@yourserver.domain.edu/home/jtprince/git/project1.git git config branch.master.remote origin git config branch.master.merge refs/heads/master
Now for the BASH scripting I promised. This is basically the same thing but maybe a little easier to copy and paste once you set up your variables:
SERVER='jtprince@yourserver.domain.edu' PROJ="project2" PROJ_URL="ssh://$SERVER/home/jtprince/git/${PROJ}.git" # set up the remote git repo in one command: ssh $SERVER "mkdir git/${PROJ}.git; cd git/${PROJ}.git; git --bare init" # (inside your project directory... with files/dirs already present): git init ; git add . ; git commit -m 'init commit'; git push $PROJ_URL master ; git remote add origin $PROJ_URL ; git config branch.master.remote origin ; git config branch.master.merge refs/heads/master
And my rant...
At least in the ruby and linux developer community, Git seems to be quite hip right now. I personally think bazaar wipes git all over the floor, but due to server circumstances beyond my control I need to version control my files with git.
While the above operation is CLEARLY and SUCCINCTLY documented in the main bazaar docs, I've had to piece this together myself for git. Now, I suppose if I had actually read and digested the volumes of arcane documentation, switches, and nuances of git, I wouldn't be griping right now. That said, projects like 'eg' can make it easier and I'm sure the things people want to do with a vcs will become documented soon enough in git... the beauties of open source.
2 comments:
I think 'git init' is missing on the local client repos..
indeed, thanks alfredh. Should be fixed now.
Post a Comment