使用单个命令(git push)更新网站,而不是使用FTP拖放

Wol*_*lfr 10 sysadmin git version-control workflow

情况:

  • 我有一个网站的本地副本
  • 我有一个SSH访问服务器

我想做什么?

  • 在本地提交,直到我对我的代码感到满意为止
  • 在本地创建分支
  • 有一个主分支是应该推送到服务器的主分支
  • 使用单个命令更新网站(git push origin master)

如果我使用git init在本地设置git repo,然后推送到服务器上的文件夹,它就不起作用.当我FTP到服务器检查文件时,它们实际上就在那里.当我SSH到服务器并执行git状态时,它不干净,即使它应该是因为我只是推送到服务器.


我正在做的步骤:

  1. 在我的电脑上创建一个新文件夹(mkdir folder_x)
  2. 进入该文件夹(cd folder_x)
  3. 在那里设置一个新的git存储库(git init)
  4. (git存储库设置成功)
  5. 使用git push origin master将存储库推送到服务器(其中origin设置为user:pass@server.tld)

joe*_*ker 12

您需要编写一个git checkout -f在远程git存储库接收推送后运行的post-receive钩子.有关详细信息,请参阅使用Git管理网站.