以前一直用svn,转入git没多久,菜鸟一只 过去一直是在服务器的server目录下git init一个仓库,然后本地客户端通过SSH连接clone这个仓库。每次push之后,然后再通过服务器hooks执行git reset --hard。以同步。 我觉得这个方法肯定是有问题,请问能否更简单一些
人生最曼妙的风景,竟是内心的淡定与从容!
如果你服务器上的代码仓库只是作为代码仓库用,也就是跟SVN的仓库一样的话,那么应该用:
git init --bare
来初始化。这样创建的仓库不包含工作目录,也就不需要用钩子去做reset。
但是如果你的服务器同时也是生产环境,每次push上去的代码希望能够自动部署的话,那不可避免地需要在服务器上clone一份工作目录,并且每次push后使用钩子去让工作目录自动同步。
服务器hook怎么执行git reset --hard?
如果你服务器上的代码仓库只是作为代码仓库用,也就是跟SVN的仓库一样的话,那么应该用:
来初始化。这样创建的仓库不包含工作目录,也就不需要用钩子去做reset。
但是如果你的服务器同时也是生产环境,每次push上去的代码希望能够自动部署的话,那不可避免地需要在服务器上clone一份工作目录,并且每次push后使用钩子去让工作目录自动同步。
服务器hook怎么执行git reset --hard?