Git从远程删除文件

时间:2016-12-10 12:54:38

标签: git openshift

我有一个网站。用户可以添加他们的个人资料。所以,我的网站将这些文件保存在一个文件夹中。但是,我的本地git clone只有这个没有图像的图像文件夹。

当我使用“git push”命令时,它工作得很好但删除了用户添加的所有图像..我该如何解决这个问题? [或者,我如何添加图像(由用户添加)到git tracking?]

(我正在使用openShift)

3 个答案:

答案 0 :(得分:2)

您需要使用OPENSHIFT_DATA_DIR来保存持久文件。使用符号链接将其链接到repo中的一个文件夹。

修改

post_deploy示例

#!/bin/bash
echo ".................Starting 'post_deploy' Action Hook..................................."
echo ".................attempting 'uploads' setting up symlink........................"
echo "................................................................................"
cd $OPENSHIFT_REPO_DIR/<path to static folder>
ln -s $OPENSHIFT_DATA_DIR/uploads uploads
echo ".................creating 'uploads' completed........................"
echo "................................................................................"

答案 1 :(得分:0)

您可以在运行git add命令时跳过该文件夹,或者更好地将其添加到.gitignore文件中,如下所示:

your_folder/*

答案 2 :(得分:0)

Git适用于文件,而不适用于文件夹。如果文件夹不包含任何文件,git会假定文件夹本身也不应该存在。

最常用的解决方案是需要保留的文件夹中的空文件.gitkeep。然后,在.gitignore中添加以下内容:

images_folder/*
!images_folder/.gitkeep

这告诉git忽略images文件夹中的所有文件,但名为.gitkeep的文件除外。 (因此该文件也必须提交。)然后git没有理由删除该文件夹,因此您的图像将保留。