git 本地与服务器的同步

如果在服务器上直接用 git init
则会自动在当前目录创建.git目录
但在本地clone后修改后,不能push,
这是由于git默认拒绝了push操作,需要进行设置,修改.git/config添加如下代码:

[receive]
denyCurrentBranch = ignore

在初始化远程仓库时最好使用 git --bare init

需首先手工创建.git目录,进入.git目录后再执行此命令

本地克隆服务器的命令
git clone username@host:/path/to/directory/.git


push后服务器目录里没有反应,这时可以在working directory使用

git reset --hard

才能看到push后的内容。

如果执行此命令出现错误
fatal: This operation must be run in a work tree

可以在服务器上先执行一下
git config core.bare false
执行完此命令,则本地不能再push到服务端,如若需要再次push 则执行一下
git config core.bare true

 

可以把以下命令做成脚本,每次push后执行即可实现服务器与本地的文件同步:


git config core.bare false
git reset --hard
git config core.bare true

 

上一篇:冬季实战营第一期报告:从零到一上手玩转云服务器


下一篇:js免费刷流量软件工具源码