Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Remote Git Repository in document root

Im trying to use git for my website. The website is on our webserver.

mkdir /home/website/public_html
cd /home/website/public_html
git --bare init

Then I go to the local machine and change into the directory where I have my files

git remote rm origin
git remote add origin [email protected]:/home/website/public_html
git push origin master
Enter passphrase for key '/c/Users/git/.ssh/id_rsa':
Counting objects: 6, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (6/6), 460 bytes, done.
Total 6 (delta 0), reused 0 (delta 0)
To [email protected]:/home/website/public_html
 * [new branch]      master -> master

But now when I got to my back to my server:

ls /home/website/public_html
branches  config  description  HEAD  hooks  info  objects  refs

Where are my files I pushed to the server? Am I going about this the wrong way? (the only thing in the local folder I pushed from was a readme)

like image 863
Marc Avatar asked Dec 18 '25 04:12

Marc


1 Answers

You have created a bare repository on the server. Bare repositories do not have a working area.

I assume you are trying to use Git for website publishing? See this link for one option. In short:

  • You create 2 repositories on the server. One is a bare repository, just like the one you have already created, but it's outside of the public_html directory
  • Other is a normal repository inside the public_html directory
  • You create a post-receive hook that updates the repository inside the public_html directory whenever you push to the bare repository
like image 145
1615903 Avatar answered Dec 19 '25 20:12

1615903



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!