![](/img/trans.png)
[英]Git Workflow Between Local and Remote Deleting files removed from cache on push to Remote
[英]Git deleting files from remote
我有一個網站。 用戶可以在個人資料中添加圖片。 因此,我的網站將這些文件保存在一個文件夾中。 但是,我本地的git clone僅具有該圖像文件夾,內部沒有圖像。
當我使用“ git push”命令時,它工作得很好,但是刪除了用戶添加的所有圖像。如何解決此問題? [或者,如何將圖像(由用戶添加)添加到git跟蹤中?]
(我正在使用openShift)
您需要使用OPENSHIFT_DATA_DIR保存持久文件。 使用符號鏈接將其鏈接到存儲庫中的一個文件夾。
編輯
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 "................................................................................"
您可以在運行git add
命令時跳過該文件夾,也可以git add
其更好地添加到.gitignore
文件中,如下所示:
your_folder/*
Git適用於文件,而不適用於文件夾。 並且,如果文件夾不包含任何文件,則git假定該文件夾本身也不應存在。
最常用的解決方案是在文件夾中保留一個空文件.gitkeep
。 然后,在.gitignore
,添加以下內容:
images_folder/*
!images_folder/.gitkeep
這告訴git忽略images文件夾中的所有文件,除了一個名為.gitkeep
文件。 (因此也必須提交該文件。)那么git沒有理由刪除該文件夾,因此您的圖像將保留下來。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.