0
我使用git将更改部署到活动服务器。Git部署挂钩不删除已删除的文件
设置为纯仓库的html文件夹之外的与下面的挂钩:
#!/bin/sh
GIT_WORK_TREE=/var/www/html git checkout -f
它更新修改过的文件并创建新的文件,但它不会删除已删除的文件。
我该如何解决这个问题?
我使用git将更改部署到活动服务器。Git部署挂钩不删除已删除的文件
设置为纯仓库的html文件夹之外的与下面的挂钩:
#!/bin/sh
GIT_WORK_TREE=/var/www/html git checkout -f
它更新修改过的文件并创建新的文件,但它不会删除已删除的文件。
我该如何解决这个问题?
末补充一点:
GIT_WORK_TREE=/var/www/html git clean -df
的git clean
命令用来删除工作目录未跟踪文件;它需要-f
才能做任何事情,并且-d
将使它删除未跟踪的目录,而不是将它们留空。
我会补充说这不是必须的*如果*裸仓库中的索引对应于分配的(通过' - git-work-tree'或'GIT_WORK_TREE')工作树。如果裸仓库中的索引与其他*工作树相对应,则在一些(罕见)情况下,您将有可能未更新文件。 – torek
@torek,你能解释一下吗?我是git的新手。 如何检查裸仓库中的索引是否与分配的工作树相对应? – MployBy
@Amber,它会删除工作目录中不存在于我推送来的本地存储库中的所有文件。或者只有在本地存储库中删除并在提交时提及的文件被删除?我期待着取得第二名。导致某些文件夹在设计中不存在于远程回购中。 – MployBy